我在上找到,要启动联系人选择器的过滤版本(它只显示有电话号码的联系人),我只需使用以下命令:
Intent pickContactIntent = new Intent( Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI );
pickContactIntent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE);
startActivityForResult(pickContactIntent, CONTACT_PICKER_RESULT);
所以这是可行的。我现在只是想知道如何在onActivityResult方法中检索所选联系人的姓名和电话号码:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// what goes here...
}
我在onActivityResult中尝试了许多不同的方法,但是查询都没有返回数字。
发布于 2013-11-19 02:23:07
Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.CommonDataKinds.Phone.CONTENT_URI);
startActivityForResult(intent, 1);
String phoneNo = null;
Uri uri = data.getData();
Cursor cursor = getContentResolver().query(uri, null, null, null, null);
if (cursor.moveToFirst()) {
int phoneIndex = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
phoneNo = cursor.getString(phoneIndex);
}
curosr.close();
https://stackoverflow.com/questions/18559574
复制相似问题