如何从uri获取联系人ID?
How to get contact id from uri?
我想获取具体的联系人 ID 和姓名。获得它的最佳方式是什么?
if (requestCode == mActions.REQUEST_PICK_CONTACT && resultCode == RESULT_OK) {
Uri uriContact = (Uri)data.getData();
String/int id = ???
String name = ???
String phoneNumber = ???
}
}
我只想获取我选择数据的联系人,而不是所有联系人。我该怎么做?
如果您有联系人 URI,这就是获取联系人元数据的方法。
String id, name, phone, hasPhone;
int idx;
Cursor cursor = getContentResolver().query(contactUri, null, null, null, null);
if (cursor.moveToFirst()) {
idx = cursor.getColumnIndex(ContactsContract.Contacts._ID);
id = cursor.getString(idx);
idx = cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
name = cursor.getString(idx);
idx = cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER);
hasPhone = cursor.getString(idx);
}
我想获取具体的联系人 ID 和姓名。获得它的最佳方式是什么?
if (requestCode == mActions.REQUEST_PICK_CONTACT && resultCode == RESULT_OK) {
Uri uriContact = (Uri)data.getData();
String/int id = ???
String name = ???
String phoneNumber = ???
}
}
我只想获取我选择数据的联系人,而不是所有联系人。我该怎么做?
如果您有联系人 URI,这就是获取联系人元数据的方法。
String id, name, phone, hasPhone;
int idx;
Cursor cursor = getContentResolver().query(contactUri, null, null, null, null);
if (cursor.moveToFirst()) {
idx = cursor.getColumnIndex(ContactsContract.Contacts._ID);
id = cursor.getString(idx);
idx = cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
name = cursor.getString(idx);
idx = cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER);
hasPhone = cursor.getString(idx);
}