本文主要讲点击“从通讯录添加”跳转到系统的通讯录,点击其中一条通讯录返回界面并读取数据:姓名+号码。
/*跳转到系统通讯录里获取号码*/ private void addNumber() { startActivityForResult(new Intent( Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI), 1); }
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1) { ContentResolver reContentResolverol = getContentResolver(); Uri contactData = data.getData(); @SuppressWarnings("deprecation") Cursor cursor = managedQuery(contactData, null, null, null, null); cursor.moveToFirst(); String username = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)); Cursor phone = reContentResolverol.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null); while (phone.moveToNext()) { String usernumber = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); Logs.i("用户名:" + username + " 电话号码:" + usernumber + " id: " + contactId); et.setText(usernumber.replace(" ", "")); } } }