Android联系人帐户

Android联系人帐户,android,contacts,Android,Contacts,我需要从我的应用程序中动态添加新联系人。 我使用AccountManager getAccounts方法列出所有电话帐户,但我会得到天气、股票等帐户。 我如何才能只获得联系人帐户?使用API实际上没有什么好办法,我们发现最准确的方法是反省:哪些帐户用于存储联系人 这有点粗糙,但它提供了相当好的结果(缓存列表,您不需要每次都这样做) 我现在没有联系人数据库的副本,所以上面的代码可能有点不对劲,但概念应该很清楚。如果我需要进一步澄清,请告诉我。也有类似情况 稍作搜索后,找到AccountManage

我需要从我的应用程序中动态添加新联系人。 我使用AccountManager getAccounts方法列出所有电话帐户,但我会得到天气、股票等帐户。
我如何才能只获得联系人帐户?

使用API实际上没有什么好办法,我们发现最准确的方法是反省:哪些帐户用于存储联系人

这有点粗糙,但它提供了相当好的结果(缓存列表,您不需要每次都这样做)


我现在没有联系人数据库的副本,所以上面的代码可能有点不对劲,但概念应该很清楚。如果我需要进一步澄清,请告诉我。

也有类似情况

稍作搜索后,找到AccountManager的以下方法:

getAccountsByTypeAndFeatures();
在这里,如果您将参数功能设置为“service_mail”、“service_talk”等,您将获得支持电子邮件和聊天的帐户,因此这些帐户也将支持联系人

更新


“service_ah”将给出设备链接到的帐户。

此方法在所有情况下都不起作用。默认联系人应用程序可以做到这一点,因此必须有其他方法。
getAccountsByTypeAndFeatures();