使用ContentResolver.requestSync()函数运行Sync Adapter On Demand后显示“Sync is Off”

时间:2015-06-11 06:17:58

标签: android android-contacts android-syncadapter

我正在尝试实现Contact Sync Adapter。当我从相应帐户下给出的同步选项进行同步操作时,它工作正常。但是当我尝试在按钮点击时首次拨打requestSync() 时,SyncAdapter实施的onPerformSync()功能已成功调用并执行但仍显示同步关闭在同步设置中的相应帐户下。

我按需运行同步适配器的代码是:

Bundle settingsBundle = new Bundle();
                settingsBundle.putBoolean(
                        ContentResolver.SYNC_EXTRAS_MANUAL, true);
                settingsBundle.putBoolean(
                        ContentResolver.SYNC_EXTRAS_EXPEDITED, true);
                /*
                 * Request the sync for the default account, authority, and
                 * manual sync settings
                 */


                ContentResolver.requestSync(mAccount, AUTHORITY, settingsBundle);

请指导我,有没有办法在运行按需同步适配器后打开同步设置。

1 个答案:

答案 0 :(得分:2)

我需要在调用requestSync(----)之前设置以下属性以实现我的目标:

ContentResolver.setSyncAutomatically(mAccount, getString(R.string.content_provider_authority), true);