Cursor cursor = contentResolver.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
while(cursor.moveToNext())
{
//获取联系人ID
int contactId = cursor.getInt(cursor.getColumnIndex(ContactsContract.Contacts._ID));
//联系人姓名
String name = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
//联系人号码需要对另一URI进行查询
/**
* content://com.android.contacts/data/phone 等同于
* ContactsContract.CommonDataKinds.Phone.CONTENT_URI
*/
Cursor phones = this.getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI
, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID +"="+contactId, null, null);
String phone = "";
while(phones.moveToNext())
{
phone = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); //data1
}
Android 获取联系人
最新推荐文章于 2025-11-25 12:12:57 发布
本文介绍了一种通过Android系统的ContentResolver查询联系人信息的方法。具体步骤包括:使用ContentResolver查询ContactsContract.Contacts.CONTENT_URI获取联系人列表;遍历查询结果,获取每个联系人的ID和显示名称;针对每个联系人ID,再次查询ContactsContract.CommonDataKinds.Phone.CONTENT_URI来获取具体的电话号码。
4298

被折叠的 条评论
为什么被折叠?



