I use a cursor like following to retrieve contacts from the phone:
String[] selection = new String[]
{
ContactsContract.Data.RAW_CONTACT_ID,
ContactsContract.Data.CONTACT_ID,
ContactsContract.Data.LOOKUP_KEY,
ContactsContract.Data.PHOTO_ID,
ContactsContract.Data.DISPLAY_NAME,
ContactsContract.Data.ACCOUNT_TYPE_AND_DATA_SET,
ContactsContract.CommonDataKinds.Phone.NUMBER,
ContactsContract.CommonDataKinds.Phone.TYPE,
ContactsContract.CommonDataKinds.Phone.LABEL,
ContactsContract.Contacts.Data.MIMETYPE,
ContactsContract.RawContacts.ACCOUNT_NAME
};
Cursor cursor = context.getContentResolver().query(
ContactsContract.Data.CONTENT_URI,//ContactsContract.CommonDataKinds.Phone.CONTENT_URI
selection,
null,//Data.MIMETYPE + "='" + Phone.CONTENT_ITEM_TYPE + "'",
null,
ContactsContract.Data.CONTACT_ID + " ASC");
What does a null cursor
mean?
- something failed? If so, what? Rights? Or anything else?
- user does not have any contacts?