Вот мой код, который даст мне имя и номер телефона контакта, нажав на элемент списка:Показать все номера телефонов, назначенные контакту?
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
final String contactName = cursor.getString(cursor.getColumnIndexOrThrow("DISPLAY_NAME"));
Cursor contCursor =(Cursor) listStarred.getItemAtPosition(position);
String strid = contCursor.getString(contCursor.getColumnIndexOrThrow(ContactsContract.Contacts._ID));
ContentResolver cr = getContentResolver();
String name = null;
String lname ="...";
contCursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID +"='"+strid+"'",
null, null);
int phoneNumberIndex = contCursor
.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER);
Log.d("Count", String.valueOf(contCursor.getCount()));
if (contCursor != null) {
Log.v("CurNotNull", "Cursor Not null");
try {
if (contCursor.moveToNext()) {
Log.v("MoveToFirst", "Moved to first");
Log.v("CheckMTF", "Cursor Moved to first and checking");
lname = contCursor.getString(phoneNumberIndex);
Toast.makeText(getApplicationContext(), contactName + " " + lname, Toast.LENGTH_SHORT).show();
}
} finally {
Log.v("Finally", "In finally");
contCursor.close();
}
}
}
Приведенный выше код, кажется, что работает отлично, но как вместо того, чтобы можно получить один телефонный номер, чтобы получить список с все номера контактов? Какие изменения необходимо сделать для получения массива с числами (и типом каждого) для выбранного контакта?