首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >调用系统联系人列表

调用系统联系人列表

作者头像
用户3135539
发布2018-09-12 10:58:12
6770
发布2018-09-12 10:58:12
举报
文章被收录于专栏:

调用系统联系人列表

Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
startActivityForResult(intent, ACTION_PICK);

获取返回

代码
 1 @Override
 2     protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
 3         if (ACTION_PICK == requestCode) {
 4             if (resultCode == Activity.RESULT_OK) {
 5                 Uri contactData = intent.getData();
 6                 Cursor c = managedQuery(contactData, null, null, null, null);
 7                 if (c.moveToFirst()) {
 8                     getContactInfo(intent);
 9                 }
10             }
11         }
12         super.onActivityResult(requestCode, resultCode, intent);
13     }

解析联系人信息 

代码

1 private void getContactInfo(Intent intent) {
 2         Cursor cursor = managedQuery(intent.getData(), null, null, null, null);
 3         while (cursor.moveToNext()) {
 4             String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
 5             String name = cursor.getString(cursor.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));
 6             String phoneNumber = null, emailAddress=null;
 7             String hasPhone = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));
 8 
 9             if (hasPhone.equalsIgnoreCase("1"))
10                 hasPhone = "true";
11             else
12                 hasPhone = "false";
13 
14             if (Boolean.parseBoolean(hasPhone)) {
15                 Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
16                         ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null);
17                 while (phones.moveToNext()) {                    
18                     phoneNumber += phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)) +";";
19                 }
20                 phones.close();
21             }
22 
23             txtContact.setText(name);
24             txtMessage.setText(phoneNumber);
25 
26             Cursor emails = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null,
27                     ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = " + contactId, null, null);
28             while (emails.moveToNext()) {
29                 emailAddress = emails.getString(emails.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA));
30             }
31             emails.close();
32 
33             Cursor address = getContentResolver().query(ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_URI, null,
34                     ContactsContract.CommonDataKinds.StructuredPostal.CONTACT_ID + " = " + contactId, null, null);
35             while (address.moveToNext()) {
36                 String poBox = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.POBOX));
37                 String street = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.STREET));
38                 String city = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.CITY));
39                 String state = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.REGION));
40                 String postalCode = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.POSTCODE));
41                 String country = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.COUNTRY));
42                 String type = address.getString(address.getColumnIndex(ContactsContract.CommonDataKinds.StructuredPostal.TYPE));
43             }
44             address.close();
45         }
46         cursor.close();
47     }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011-01-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档