我正在使用以下方法开始手动同步
public void startSync(){
Bundle syncBundle = new Bundle();
syncBundle.putBoolean(ContentResolver.SYNC_EXTRAS_EXPEDITED, true);
syncBundle.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
syncBundle.putInt(Utils.SYNC_TYPE, USER_DATA);
ContentResolver.requestSync(acts[0], CONTENT_AUTHORITY, syncBundle);
}
说同步失败是因为某种原因:
1.网络故障--如何在网络恢复时重新启动同步
2.服务器的不良响应--重试的最佳方法
3.设备关闭--当设备启动时重新启动同步的最佳方法
在android的同步框架中是否有任何机制来处理这个问题。**
发布于 2016-01-21 18:10:32
对于#1和#2,您可以报告一个“软错误”,然后它应该自动重试(带指数退避):
syncResult.stats.numIoExceptions++;
对于#4,您可以为android.intent.action.BOOT_COMPLETED
创建一个广播接收器,然后从那里触发手动同步。
https://stackoverflow.com/questions/34930431
复制相似问题