[英]How to query Android 2.x Contacts with Emails and/or Phone Numbers?
讓我們強行你的花園式Android 2.x可見聯系人ID /名稱游標(通過ContactsContract ):
Cursor c = getContentResolver().query(
Contacts.CONTENT_URI,
new String[] { Contacts._ID, Contacts.DISPLAY_NAME },
Contacts.IN_VISIBLE_GROUP + " = '1'",
null,
Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"
);
有沒有辦法過濾這個以獲得只有至少一個電子郵件和/或電話號碼的聯系人?
我看到我可以使用Contacts.HAS_PHONE_NUMBER ...但我在任何地方都看不到HAS_EMAIL 。 (告訴我這不會變得難看。)
查詢相應的內容提供商Uri
。 例如, android.provider.ContactsContract.CommonDataKinds.Email
允許您獲取電子郵件地址,並隱式加入您的其他列(例如, IN_VISIBLE_GROUP
)。
這是一個示例項目 ,演示如何使用這些其他內容提供程序Uri值。
我只是枚舉了在Contacts上獲取的游標上的列,如下所示:
Cursor c = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
String[] names = c.getColumnNames();
for (String string : names) {
Log.d("ContactList", "RC column " + string);
}
c.close();
結果包含has_email
。 但它可能是特定於星系標簽的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.