Bha*_*ark 9 android android-syncadapter
我的syncadapter运行良好,除了一件事.用户安装应用程序后,我的应用程序会同步两次.稍后,如果我在"设置"中手动同步它,它只会按预期同步一次.这只是应用程序的第一次运行.
这是我的"onCreate"中的代码,如果尚未创建帐户,则创建帐户并设置syncadapter.关于我做错了什么的任何想法?
if (accountManager.addAccountExplicitly(appAccount, null, null)) {
ContentResolver.setIsSyncable(appAccount, PROVIDER, 1);
ContentResolver.setSyncAutomatically(appAccount, PROVIDER, true);
Bundle extras = new Bundle();
extras.putBoolean("dummy stuff", true);
ContentResolver.addPeriodicSync(appAccount, PROVIDER, extras, 43200);
}
Run Code Online (Sandbox Code Playgroud)
我希望的行为是让应用程序在安装后立即同步一次,然后根据"addPeriodicSync"语句定期进行同步.
除了 addPeriodicSync() 之外,您是否还请求同步?
当您第一次添加帐户时,它应该会自行同步。因此任何额外的同步请求都会导致双重同步。
如果这没有帮助,您可以随时在首选项中保存上次同步的时间,并在每次同步时检查该时间,以便您可以将同步频率限制为您想要的任何频率。
希望有帮助!