2011-06-24 54 views
5

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有標記一個給定的數字作爲「默認號碼」的能力。 如何查看查詢號碼是否爲默認號碼?

回答

7

嘗試在CONTENT_URI查詢中查詢列IS_SUPER_PRIMARY

如果它返回一個非零值,則該條目可能會被解釋爲其類型的默認聯繫值(例如,用於聯繫人的默認電話號碼)。

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

+0

非常感謝。我爲此搜尋了一些時間。我想知道爲什麼這裏的文檔不夠精確。但是,當SUPER_PRIMARY> 0似乎工作正常時,將一個數字標記爲默認數字! :-) – Flow