Có cách nào nhận tất cả các số điện thoại cho tất cả các số liên lạc mà không thực hiện truy vấn riêng cho từng số liên lạc không? (sử dụng Android 2.0 trở lên). Nó thực sự chậm nếu bạn có hơn 100 địa chỉ liên lạc (không thể sử dụng trên điện thoại cấp thấp), tôi tự hỏi liệu tôi có thể thực hiện truy vấn hiệu quả hơn hay không.Cách hiệu quả để tải tất cả các số liên lạc và tất cả các số điện thoại (Android 2.0)
Hiện tại tôi đang nhận được một con trỏ với tất cả địa chỉ liên hệ ContactsContract.Contacts.IN_VISIBLE_GROUP hợp lệ rồi truy vấn riêng biệt cho từng liên hệ để nhận tất cả số của họ.
Snippet từ get hệ chỉ geting tên và tra cứu chính:
Uri uri = ContactsContract.Contacts.CONTENT_URI;
String[] projection = new String[] {
ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.Contacts.LOOKUP_KEY};
Sau đó, mỗi lần tiếp xúc sử dụng chìa khóa tra cứu.
Uri lookupUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_LOOKUP_URI, lookupKey);
Uri res = ContactsContract.Contacts.lookupContact(contentResolver, lookupUri);
String[] projection = new String[]{ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.Contacts.HAS_PHONE_NUMBER};
...
Cursor phones = contentResolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, phoneProjection, selection, selectionArgs, sortOrder);
rằng các liên kết cho câu hỏi này? – scottyab
Bạn phải gửi biểu mẫu hai lần. Điểm tốt. Đã bỏ phiếu để đóng. – scottyab