1
我写了一个代码,返回我的android手机上的所有联系人。 但是当我在我的android手机上运行它时,我发现即使我有600个联系人 - 我的代码只有173个联系人为什么我无法获取手机上的所有联系人?
如何获取所有联系人? 为什么我只有173个?
代码:
private void CollectAllContacts(Activity activity){
ArrayList<ContactData> contactDataList = new ArrayList<ContactData>();
try {
ContentResolver cr = activity.getContentResolver();
Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
if (cur.getCount() > 0) {
while (cur.moveToNext()) {
ContactData newContact = new ContactData();
String id = cur.getString(cur.getColumnIndex(ContactsContract.Contacts._ID));
String name = cur.getString(cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
newContact.setId(id);
newContact.setDisplayName(name);
contactDataList.add(newContact);
}
}
}
catch(Exception e)
{
// write to log.
}
}