获取收藏夹联系人列表始终为空



我试图在三星galaxy S4上获得所有联系人相同的收藏夹联系人列表。我使用的代码如下:

public void getFavoritesContactsList(ContentResolver cr) {

        Uri queryUri = ContactsContract.Contacts.CONTENT_URI;
        String[] projection = new String[] {
                ContactsContract.Contacts._ID,
                ContactsContract.Contacts.DISPLAY_NAME,
                ContactsContract.Contacts.STARRED};
        String selection =ContactsContract.Contacts.STARRED + "="+"1";
        Cursor cursor = managedQuery(queryUri, projection, selection, null, null);
        while (cursor.moveToNext()) {
            String contactID = cursor.getString(cursor
                    .getColumnIndex(ContactsContract.Contacts._ID));
            Intent intent = new Intent(Intent.ACTION_VIEW);
            Uri uri = Uri.withAppendedPath(
                ContactsContract.Contacts.CONTENT_URI, String.valueOf(contactID));
            intent.setData(uri);
            String intentUriString = intent.toUri(0);
            String title = (cursor.getString(
                cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)));
            name1.add(title);
            _idd.add(contactID);
        }
        cursor.close();
     }

public Map getFavoriteContacts(){
    Map contactMap = new HashMap();
    Uri queryUri = ContactsContract.Contacts.CONTENT_URI;
    String[] projection = new String[] {
            ContactsContract.Contacts._ID,
            ContactsContract.Contacts.DISPLAY_NAME,
            ContactsContract.Contacts.STARRED};
    String selection =ContactsContract.Contacts.STARRED + "='1'";
    Cursor cursor = managedQuery(queryUri, projection, selection, null, null);
    while (cursor.moveToNext()) {
        String contactID = cursor.getString(cursor
                .getColumnIndex(ContactsContract.Contacts._ID));
        Intent intent = new Intent(Intent.ACTION_VIEW);
        Uri uri = Uri.withAppendedPath(
            ContactsContract.Contacts.CONTENT_URI, String.valueOf(contactID));
        intent.setData(uri);
        String intentUriString = intent.toUri(0);
        String title = (cursor.getString(
            cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)));
        contactMap.put(title,intentUriString);
    }
    cursor.close();
    return contactMap;
}

最新更新