我想从android中的电话簿中过滤同步的Facebook联系人,是否有任何投射content://方案,以便检索内容。

这是我当前的查询给定的URI,在结果集上返回一个游标。

public static Cursor getContactList(ContentResolver cr) {
        // reading all data in descending order according to DATE
        Cursor curContact =  cr.query(ContactsContract.Contacts.CONTENT_URI,
                null, null, null, null);
        return curContact;
    }

最佳答案

是...
您可以根据帐户类型获得同步的联系人。对于WhatsApp,它是“ com.whatsapp”(* Facebook的帐户类型尚未测试)。所以
只需定义帐户类型,如下例

Cursor c = getContentResolver().query(
        RawContacts.CONTENT_URI,
        new String[] { RawContacts.CONTACT_ID, RawContacts.DISPLAY_NAME_PRIMARY },
        RawContacts.ACCOUNT_TYPE + "= ?",
        new String[] { "com.whatsapp","facebook" },
        null);

ArrayList<String> myWhatsappContacts = new ArrayList<String>();
int contactNameColumn = c.getColumnIndex(RawContacts.DISPLAY_NAME_PRIMARY);
while (c.moveToNext())
{
    // You can also read RawContacts.CONTACT_ID to read the
    // ContactsContract.Contacts table or any of the other related ones.
    myWhatsappContacts.add(c.getString(contactNameColumn));
}

10-05 23:04