6
我需要修复我的旧应用程序中的错误。部分错误是我如何选择联系人。以下是我需要:如何从电话号码中仅从谷歌联系人(不是Facebook等)中选择联系人?
- 接触必须从 “正常”的谷歌联系人列表,即 我并不想从Facebook或任何类似的接触 。
- 联系人必须至少有一个电话号码。
- 联系人必须来自旧的
android.provider.Contacts
供应商。 - 如果我可以使用Intent来获取联系人URI而无需自己创建选择列表等,那么这是一项奖励。
听起来很简单,但我真的很挣扎。这就是我想要的:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(Intent.ACTION_PICK, Contacts.People.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT_REQUEST);
}
这很好。我仍然看到没有电话号码的联系人,但我可以忍受。更糟糕的是,我仍然看到名单上的Facebook联系人!这似乎与在Froyo API for the deprecated Contacts content provider发现的以下报价相矛盾:
这些API已被ContactsContract取代。较新的API允许访问多个帐户并支持类似联系人的聚合。这些API继续工作,但只会返回创建的第一个Google帐户的数据,这与原始行为相符。
这听起来像我想要的,但唉,不是我得到的。
最后,这里是我的,我希望有人能够回答具体问题:使用android.provider.Contacts内容提供商时
- 为什么我看到Facebook联系人?
- 如果这不起作用,我该怎么让用户选择一个谷歌联系人的电话号码?
非常感谢。 古斯塔夫
难道ü想出了一个解决方案? – 2011-04-28 17:38:20