2013-07-07 3 views
2

Я хочу получить список контактов на основе набора телефонных номеров. Что здесь происходит?Извлечение контактов из набора телефонных номеров

В настоящее время с помощью этого -

private String numbers = "'12345', '54321'"; 

String[] mSelectionArgs = {numbers};' 

return new CursorLoader(getActivity(), 
        PhoneLookup.CONTENT_FILTER_URI, 
        ContactsQuery.PROJECTION, 
        ContactsQuery.SELECTION, 
        mSelectionArgs, 
        PhoneLookup.DISPLAY_NAME); 

PROJECTION и ВЫБОРА определены в ContactsQuery следующим

final static String[] PROJECTION = { 
     PhoneLookup._ID, 

     PhoneLookup.LOOKUP_KEY, 

      PhoneLookup.DISPLAY_NAME, 

      PhoneLookup.PHOTO_THUMBNAIL_URI, 

    }; 

final static String SELECTION =  
      PhoneLookup.HAS_PHONE_NUMBER + "=1 AND " + PhoneLookup.NUMBER) + " IN (?)"; 

Однако я получаю ошибку:

07-08 00: 44: 21,007 : E/AndroidRuntime (2307): вызвано: java.lang.IllegalArgumentException: URI: content: //com.android.contacts/phone_lookup, вызывая пользователя: com.example.android.contactslist, вызывающий пакет: com.exa mple.android.contactslist

ответ

0

Попытка:

ContentResolver кр = context.getContentResolver(); Курсор курсор = cr.query (ContactsContract.Contacts.CONTENT_URI, null, (DISPLAY_NAME = '"+ name +"' "), null, null);

+0

Contacts.CONTENT_URI не позволяет фильтровать на основе PhoneNumbers. Следовательно, использование PhoneLookup.CONTENT_FILTER_URI –

Смежные вопросы