从一组电话号码中检索联系人

时间:2013-07-07 19:20:07

标签: android contactscontract

我希望根据一组电话号码检索联系人列表。这里出了什么问题?

目前使用此 -

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和SELECTION在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,调用user:com.example.android .contactslist,调用包:com.example.android.contactslist

1 个答案:

答案 0 :(得分:0)

尝试:

ContentResolver cr = context.getContentResolver(); Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI,null,(DISPLAY_NAME ='“+ name +”'“),null,null);