0
我正在使用以下光标来检索手机中的通讯录?但是,该代码给我在SIM和手机中的联系人。是否有可能仅通过电话获取联系人,他们的照片(如果可用),电话号码和显示名称?安卓手机通讯录仅适用于照片,手机和名称
cursor = getContentResolver().query(Phone.CONTENT_URI, null, null, null, null);
int contactIdIdx = cursor.getColumnIndex(Phone._ID);
int nameIdx = cursor.getColumnIndex(Phone.DISPLAY_NAME);
int phoneNumberIdx = cursor.getColumnIndex(Phone.NUMBER);
int photoIdIdx = cursor.getColumnIndex(Phone.PHOTO_ID);
cursor.moveToFirst();
do {
try {
Contact c = new Contact();
String idContact = cursor.getString(contactIdIdx);
String name = cursor.getString(nameIdx);
c.setName(name);
Log.i(TAG,storage.getDriveName()+": "+name);
String phoneNumber = cursor.getString(phoneNumberIdx);
Log.i(TAG,storage.getDriveName()+": "+phoneNumber);
c.setPhoneNumber(phoneNumber);
if(phoneNumber != null)
c.setPhotoUri(getPhotoUri(Long.valueOf(fetchContactIdFromPhoneNumber(phoneNumber))));
contacts.add(cbd);
} catch(Exception e) {
Log.e(TAG,storage.getDriveName()+": "+e.getMessage());
}
} while (cursor.moveToNext());
} catch (Exception e) {
Log.e(TAG,storage.getDriveName()+": "+e.getMessage());
}
if (cursor != null) {
cursor.close();
}
}