Android 4.x:在联系人中获取自定义帐户类型侦听

时间:2012-07-06 17:52:36

标签: android android-syncadapter

我正在尝试为Android编写自己的Sync Adapter。我正在从SDK中挖掘样本同步适配器,但它可怕的未记录。 我可以将联系人显示在联系人应用中。但我无法编辑或创建新的。

很难找到有关如何在默认联系人应用中列出要创建的自己的帐户类型或使其可编辑的任何信息。我不想添加任何自定义stüff字段和android已经支持的数据。

任何人都可以向我指出如何将我的同步适配器集成到默认联系人应用程序(如交换同步)的教程或示例吗?

  • 要添加到AndroidManifest.xml
  • 的内容
  • 需要添加到contacts.xml的内容
  • 需要添加到syncadapter.xml的内容
  • 是否需要添加任何代码才能正常工作?

顺便说一下:
我不关心低于ICS的Android版本。我到处都读到2.x的联系人应用程序不支持这个,但3.x及以上版本。 2.x不在桌面上,所以我正在寻找ICS的方法。

先谢谢

2 个答案:

答案 0 :(得分:7)

我认为回答这个问题有点晚了,但我遇到了这个问题并最终解决了。在android 4.x中,你可以在android中只添加三种帐户的联系方式。 1)Google帐户,2)Exchange帐户,3)可写帐户,并且通过可写,这意味着您的contacts.xml文件应包含EditSchema标记。您还应该将以下标记添加到清单文件中:

<meta-data android:name="android.provider.CONTACTS_STRUCTURE" android:resource="@xml/contacts" />

关于EditSchema,以下网址中有一个很好的示例:

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.0.3_r1/packages/apps/Contacts/tests/res/xml/test_basic_contacts.xml

您只需复制上面的xml文件内容并将其粘贴到contacts.xml文件中。(如果需要,您可以自定义xml)并且一切都已完成!

答案 1 :(得分:0)

看看这个:

Edit custom contact in honeycomb

之前我问过这个问题,我开了一笔赏金来得到答案。答案是,尽管Honeycomb中存在该功能,但在任何地方都没有记录。您需要通过代码来了解如何执行此操作。

我现在发现有一些文档,例如:Blog about social network API