在不创建帐户的情况下使用SyncAdapter

时间:2012-08-30 21:07:09

标签: android asynchronous android-syncadapter android-account

我的应用程序允许人们使用和管理他们的数据,无论他们是否已登录。但是,由于我唯一地识别每个设备,我也希望同步来自我的匿名用户(不是已登录的用户)的数据。所以,我想知道在这种情况下创建一个匿名帐户是否是一个好习惯,因为SyncAdapters只能用于帐户。

我应该为我的匿名用户创建一个帐户,还是应该将他们的数据与线程/ AsyncTasks / Loaders同步?特别是,有没有办法让ContentResolver.requestSync()在不需要帐户的情况下工作?

1 个答案:

答案 0 :(得分:5)

在Android中使用SyncAdapter / AccountManager坦率地说比它的价值更麻烦。只有当您希望大量其他应用程序想要共享您的帐户数据(例如Twitter或Facebook)时,才能最好地使用该特定模式。

我建议你只编写自己的后台Service实现来进行同步。您可以使用AlarmManager通知服务定期同步。否则,您只需在用户使用基本AsyncTask打开您的应用程序时进行同步。