2011-06-24 49 views
5

ATM tôi nhận được số lượng và nhãn của một CONTACT_ID đưa ra vớiLàm thế nào để phát hiện các số điện thoại mặc định của một số liên lạc (nếu thiết lập)

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 có khả năng để đánh dấu một số lượng nhất định như "số mặc định" . Làm cách nào để tìm hiểu xem số được truy vấn có phải là số mặc định không?

Trả lời

7

Cố truy vấn cột IS_SUPER_PRIMARY trong truy vấn CONTENT_URI của bạn.

Nếu trả về giá trị khác 0 thì mục nhập có thể được hiểu là giá trị liên lạc mặc định thuộc loại này (ví dụ: số điện thoại mặc định để sử dụng cho số liên lạc).

Thông tin khác: http://developer.android.com/reference/android/provider/ContactsContract.Data.html

+0

Cảm ơn bạn rất nhiều. Tôi đã tìm kiếm một số thời gian cho việc này. Tôi tự hỏi tại sao tài liệu là không chính xác ở đây. Nhưng đánh dấu một số là số mặc định khi SUPER_PRIMARY> 0 có vẻ hoạt động tốt! :-) – Flow

Các vấn đề liên quan