代碼使用已棄用的 PhoneLookup.NUMBER,且未請求 READ_CONTACTS 權限。Android 2.0+ 應使用 ContactsContract.CommonDataKinds.Phone。
Cursor cursor = getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null, null, null, null);
while (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String number = cursor.getString(cursor.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.NUMBER));
// 使用 name & number
}
cursor.close();<uses-permission android:name="android.permission.READ_CONTACTS" />Android 6.0+ 還需運行時動態申請權限。
String[] from = {ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER};
int[] to = {android.R.id.text1, android.R.id.text2};
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
android.R.layout.simple_list_item_2, cursor, from, to, 0);