Я не могу получить рабочий Курсор, содержащий все номера телефонов контактов:
Я получаю lookupUri, используя этот метод:
public static Uri getLookupUri (ContentResolver mContentResolver, String number) {
Uri uri=null;
Cursor contactLookupCursor =
mContentResolver.query(
Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI,
Uri.encode(number)),
new String[] {PhoneLookup._ID, PhoneLookup.LOOKUP_KEY},
null,
null,
null);
if (contactLookupCursor.moveToNext()) {
uri=Uri.withAppendedPath( ContactsContract.Contacts.CONTENT_LOOKUP_URI, contactLookupCursor.getString(contactLookupCursor.getColumnIndexOrThrow(PhoneLookup.LOOKUP_KEY)));
}
contactLookupCursor.close();
return uri;
}
Тогда я бы хотел получить Курсор (телефоны), содержащий все номера телефонов контактов:
String[] projection = new String[] { ContactsContract.CommonDataKinds.Phone.NUMBER};
Cursor phones = localContentResolver.query(lookupUri, projection, null, null, null);
но я получаю только IllegalArgumentException: Invalid column data1