2012-06-10 1 views
2

Я читаю RawContacts из учетных записей Google на Android, как это.Как исключить контакты GooglePlus при чтении RawContacts

final Cursor cursor = cr.query(
    ContactsContract.RawContacts.CONTENT_URI, null, 
    RawContacts.ACCOUNT_TYPE + " = ?", 
    new String[] { "com.google" }, "display_name"); 
Log.i(TAG, "Start RawContact table"); 
for (int i = 0; i < cursor.getColumnCount(); i++) { 
    Log.d(TAG, i + " : " + cursor.getColumnName(i) + " : " 
      + cursor.getString(i) + "\n"); 
} 
Log.i(TAG, "End RawContact table"); 

Однако контакты Google plus также попадают в микс.

06-10 15:05:11.139: D/Merger(20004): 13 : account_type : com.google 
06-10 15:05:11.139: D/Merger(20004): 14 : account_type_and_data_set : com.google/plus 

Как я могу предотвратить это?

ответ

1

Ответ очень прост. Я просто этого не видел. Надеюсь, это поможет кому-то.

Cursor cursor = cr.query(
      ContactsContract.RawContacts.CONTENT_URI, null, 
      RawContacts.ACCOUNT_TYPE + " IS ? AND "+ RawContacts.DATA_SET+" IS NULL", 
      new String[] { "com.google", }, "display_name");