我是 syncAdapter 的新手。我已经观看了google IO 视频(此处的讲座演示),并且我已阅读了 2 个关于它的教程(此处和此处)。
我还尝试了教程的代码,令人沮丧的是我无法弄清楚如何正确实现同步适配器。
我相信一些偏好(无论是在清单中还是在 xml 文件中)都是错误的,但我不知道为什么。
我已成功允许添加同步帐户并使用其图标显示它。
但是,我面临一些奇怪的问题,我无法弄清楚它们为什么会发生:
允许帐户同步。最终用户无法按下同步按钮。即使我在添加帐户时尝试添加这样的东西,它似乎也不会自动同步。
添加帐户后,最终用户会看到一个奇怪的帐户描述:“res/xml/authenticator.xml”。不确定它的设置位置。
单击帐户时(添加后),我看到一个空列表(很可能。我如何在那里添加更多项目?将来,我还需要与 facebook 和 gmail 同步,但我无法成功将我自己的 contentProvider 添加到此列表中。
我不需要进行真正的授权,所以我只在从 AccountAuthenticatorActivity 扩展的活动中使用下一个代码:
accountManager.addAccountExplicitly(account, PASSWORD, null);
final Intent intent = new Intent();
intent.putExtra(AccountManager.KEY_ACCOUNT_NAME, USERNAME);
intent.putExtra(AccountManager.KEY_ACCOUNT_TYPE, accountType);
setAccountAuthenticatorResult(intent.getExtras());
setResult(RESULT_OK, intent);
finish();
我还尝试使用此处描述的内容设置自动同步并启用同步。