当前位置:操作系统 > 安卓/Android >>

android 由data 获取联系人信息

//跳转到联系人界面
private void pickContact() {
   // Create an intent to "pick" a contact, as defined by the content provider URI
   Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
   startActivityForResult(intent, PICK_CONTACT_REQUEST);
}
 
//返回来的Intent中的data数据是用户选择的联系人的Uri ,表示资源的位置,以便ContentProvider去查找(query)资源(The URI, using the content:// scheme, for the content to retrieve)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {


   if (resultCode == Activity.RESULT_OK && requestCode == PICK_CONTACT_REQUEST) {
      
    System.out.println("data.getData() " + data.getData());
// 输出为: content://com.android.contacts/contacts/lookup/0r5-385C3A525C/5
       Cursor cursor = getContentResolver().query(data.getData(),  new String[] {Contacts.DISPLAY_NAME}, null, null, null);
       if (cursor.moveToFirst()) {
           int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
           String name = cursor.getString(columnIndex);
           System.out.println(name);
       }
   }
}

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,