//弹出联系人选择
Intent i = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
startActivityForResult(i, 0);
//获取姓名和号码
Uri uri = data.getData();
// 得到ContentResolver对象
ContentResolver cr = getContentResolver();
// 取得电话本中开始一项的光标
Cursor cur = cr.query(uri, null,
null, null, orderBy);
cur.moveToFirst();
//取得联系人姓名
int nameFieldColumnIndex = cur
.getColumnIndex(PhoneLookup.DISPLAY_NAME);
String contact = cur.getString(nameFieldColumnIndex);
//取得电话号码
String ContactId = cur.getString(cur
.getColumnIndex(ContactsContract.Contacts._ID));
Cursor phone = cr
.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID
+ "="
+ ContactId
+ " AND "
+ ContactsContract.CommonDataKinds.Phone.TYPE
+ "="
+ ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE,
null, null);
String number = "";
// 取得电话号码(可能存在多个号码)
for (int j = 0; j < phone.getCount(); j++) {
phone.moveToPosition(j);
String PhoneNumber = phone
.getString(phone
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
if (j > 0) {
number += " , ";
}
number += PhoneNumber;
}