sia*_*mii 41 account rest android sync adapter
我需要从我的应用程序通过云获取一些数据.我在RESTful安卓应用上观看了谷歌IO视频@ http://www.youtube.com/watch?v=xHXn3Kg2IQE&t=43m58s它建议在最终幻灯片中使用SyncAdapter与Android系统集成.
后来我了解到必须使用帐户来实现SyncAdapter.我的应用不使用帐户.用户无需注册即可自由下载数据.我还可以使用SyncAdapter吗?我可以使用股票虚拟账户吗?
编辑:我的应用程序有一个内容提供商,所以这不是问题
编辑2:我刚看了设置 - >帐户和同步下的天气和股票应用程序.您可以看到它们允许同步,但没有删除帐户按钮.另一方面,谷歌,Facebook和Skype应用程序允许同步PLUS他们有一个删除帐户按钮.这意味着天气和股票不使用账户,而谷歌,Facebook和Skype都这样做.
我找到的教程@ http://ericmiles.wordpress.com/2010/09/22/connecting-the-dots-with-android-syncadapter/和@ http://www.c99.org/2010/01/23/writing-an-android-sync-provider-part-1 /说必须有一个帐户才能使用同步适配器.:S ???
sia*_*mii 12
我不断从这个问题收到很多通知,所以我想我会分享这些信息.这是您在没有帐户的情况下添加SyncAdapter的方法.你可以把这个onCreate的MyApplication extends Application类.这假设您已经拥有SyncAdapter并ContentProvider实施了.您可以按照问题中列出的教程执行此操作.
final String ACCOUNT_NAME = "MyApp";
final String ACCOUNT_TYPE = "com.myapp.account";
final String PROVIDER = "com.myapp.provider";
Account appAccount = new Account(ACCOUNT_NAME,ACCOUNT_TYPE);
AccountManager accountManager = AccountManager.get(getApplicationContext());
if (accountManager.addAccountExplicitly(appAccount, null, null)) {
ContentResolver.setIsSyncable(appAccount, PROVIDER, 1);
ContentResolver.setMasterSyncAutomatically(true);
ContentResolver.setSyncAutomatically(appAccount, PROVIDER, true);
}
Run Code Online (Sandbox Code Playgroud)
RES/XML/syncadapter.xml
<sync-adapter xmlns:android="http://schemas.android.com/apk/res/android"
android:contentAuthority="@string/provider"
android:accountType="@string/account_type"
android:userVisible="true"
android:supportsUploading="true"
/>
Run Code Online (Sandbox Code Playgroud)
RES/XML/authenticator.xml
<account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
android:accountType="@string/account_type"
android:icon="@drawable/app_icon"
android:smallIcon="@drawable/app_icon"
android:label="@string/app_label"
/>
Run Code Online (Sandbox Code Playgroud)
Sha*_*ell 11
我创建了一个联系人同步适配器,我没有帐户授权和/或配置屏幕.这并不难.我不认为必须处理Android帐户的东西是一个很大的交易.
从您的教程链接引用:
坏消息是没有"库存"功能可以让您轻松地为系统提供帐户.但是,在SDK附带的同一个同步适配器示例中,您可以借用许多代码来为您提供帐户功能.除非您需要自定义凭据屏幕,否则只需进行一些小的更改即可删除com.example.android.samplesync.authenticator包中的所有代码.
所以它基本上只是来自示例的复制和粘贴,这几乎就是我做的,它工作得很好.
我不确定,但所有没有"删除帐户"的适配器似乎都是我所看到的所有设备上的内置ROM适配器.我不确定你是否担心它.
| 归档时间: |
|
| 查看次数: |
21900 次 |
| 最近记录: |