我正在使用旧的Contacts API来选择带有电话号码的联系人.我想使用较新的ContactsContracts API.我想要...
ContactsContracts非常复杂.我找到了许多例子,但没有一个符合我的需求.我不想选择联系人然后查询联系人的详细信息,因为这会给我一个他们的电话号码列表.我需要用户选择其中一个联系人的电话号码.我不想编写自己的对话框来显示联系人或让用户选择一个电话号码.有什么简单的方法可以得到我想要的东西吗?
这是我正在使用的旧API代码:
static public final int CONTACT = 0;
...
Intent intent = new Intent(Intent.ACTION_PICK, Contacts.Phones.CONTENT_URI);
startActivityForResult(intent, CONTACT);
...
public void onActivityResult (int requestCode, int resultCode, Intent intent) {
if (resultCode != Activity.RESULT_OK || requestCode != CONTACT) return;
Cursor c = managedQuery(intent.getData(), null, null, null, null);
if (c.moveToFirst()) {
String phone = c.getString(c.getColumnIndexOrThrow(Contacts.Phones.NUMBER));
// yay
}
}
Run Code Online (Sandbox Code Playgroud)