private Cursor getContacts(CharSequence constraint) {
boolean hasConstrains = constraint != null && constraint.length() != 0;
Uri uri = ContactsContract.Contacts.CONTENT_URI;
String[] projection = new String[]{ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME };
String selection = hasConstrains ? projection[1] + " LIKE '"+constraint+"%'" : null;
String[] selectionArgs = null;
String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " ASC";
return managedQuery(uri, projection, selection, selectionArgs, sortOrder);
}
При первом запуске я даю null
в качестве параметра функции для параметра выбора: empty
, то есть я не фильтрую строки.
Проблема в том, что я получаю только те контакты, которые создал сам, не используя syncAdapter
.
Я использовал приложение Facebook для синхронизации моих Facebook контактов, но этот запрос не возвращает их.
Я извлек contacts2.db
из эмулятора, и в представлении view_contacts
отображаются все контакты, поэтому БД обновлена.
Что нужно сделать, чтобы получить все контакты независимо от того, как они были созданы (с помощью какого адаптера синхронизации).