通过电话号码获取联系人

时间:2014-12-26 12:33:17

标签: java android performance android-contacts

我正在寻找一种通过提供一些电话号码来选择联系人的方法,例如,我想选择所有具有任何此电话号码(+1234567890)或(+1234567889)的联系人。

由于联系电话号码可以以不同的格式存储,我无法使用此方法

contentResolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.NUMBER + " in (?)", new String[]{"(+1234567890,+1234567889"}, null);

我找到了一种方法,允许我按号码搜索联系人,但只提供一个号码,而不是列表,如下所示:

 Uri uri = Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI, Uri.encode(number));
    contentResolver.query(uri,null,
            null,
            null, null);

有没有办法为这个查询提供一个数字列表呢?

据我所知,我可以选择所有联系人,然后通过它们来过滤它们,但它很慢而不推荐。

任何建议都将不胜感激,谢谢。

0 个答案:

没有答案