首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安卓SyncAdapter中的重试机制

安卓SyncAdapter中的重试机制
EN

Stack Overflow用户
提问于 2016-01-21 17:29:18
回答 1查看 658关注 0票数 3

我正在使用以下方法开始手动同步

代码语言:javascript
运行
复制
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的同步框架中是否有任何机制来处理这个问题。**

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-21 18:10:32

对于#1和#2,您可以报告一个“软错误”,然后它应该自动重试(带指数退避):

代码语言:javascript
运行
复制
syncResult.stats.numIoExceptions++;

对于#4,您可以为android.intent.action.BOOT_COMPLETED创建一个广播接收器,然后从那里触发手动同步。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34930431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档