【问题标题】:How to detect the default phone number of a contact (if set)如何检测联系人的默认电话号码(如果已设置)
【发布时间】:2011-09-22 08:58:25
【问题描述】:

ATM 我得到给定 CONTACT_ID 的号码和标签

String where =  ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId;
Cursor c = ctx.getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, where, null, null);
while (c.moveToNext()) {
     String number = Tools.getString(c, CommonDataKinds.Phone.NUMBER);
     String label = Tools.getString(c,CommonDataKinds.Phone.LABEL);
}

Android 能够将给定数字标记为“默认数字”。 如何判断查询到的号码是否为默认号码?

【问题讨论】:

    标签: android android-contacts


    【解决方案1】:

    尝试在您的 CONTENT_URI 查询中查询 IS_SUPER_PRIMARY 列。

    如果它返回一个非零值,则该条目可能会被解释为同类的默认联系人值(例如,用于联系人的默认电话号码)。

    更多信息:http://developer.android.com/reference/android/provider/ContactsContract.Data.html

    【讨论】:

    • 非常感谢。我为此搜索了一段时间。我想知道为什么这里的文档如此不精确。但是当 SUPER_PRIMARY > 0 时将数字标记为默认数字似乎可以正常工作! :-)
    猜你喜欢
    • 2018-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-03
    • 2016-09-26
    • 2016-12-26
    • 1970-01-01
    • 2012-06-13
    相关资源
    最近更新 更多