zoukankan      html  css  js  c++  java
  • 调用系统联系人列表

    调用系统联系人列表

    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, nullnullnullnull);
     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(), nullnullnullnull);
     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, nullnull);
    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, nullnull);
    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, nullnull);
    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     }
  • 相关阅读:
    poj3278 Catch That Cow
    poj2251 Dungeon Master
    poj1321 棋盘问题
    poj3083 Children of the Candy Cor
    jvm基础知识—垃圾回收机制
    jvm基础知识1
    java面试基础必备
    java soket通信总结 bio nio aio的区别和总结
    java scoket aIO 通信
    java scoket Blocking 阻塞IO socket通信四
  • 原文地址:https://www.cnblogs.com/mobile/p/1944652.html
Copyright © 2011-2022 走看看