查詢手機內聯系人
阿新 • • 發佈:2017-11-12
ext.get mime logs als cnblogs turn pub span phone
聯系人的創建查詢
public class Query { //查詢聯系人的方法 public static List<Contact> queryContact(Context context){ //創建一個集合對象 List<Contact> contacts=new ArrayList<Contact>(); //先查詢raw_contact表 這個表有幾條聯系人數據 //由於聯系人數據通過內容提供者暴露出來,所以我們可以通過內容解析操作數據庫Uri uri=Uri.parse("content://com.android.contacts/raw_contacts"); Uri dataUri=Uri.parse("content://com.android.contacts/data"); Cursor cursor=context.getContentResolver().query(uri,new String[]{"contact_id"},null,null,null); while (cursor.moveToNext()){ String contact_id=cursor.getString(0); if (contact_id!=null){ Contact contact=new Contact(); contact.setId(contact_id); Cursor cursor1=context.getContentResolver().query(dataUri,new String[]{"data1","mimetype"},"raw_contact_id=?",new String[]{contact_id},null); while (cursor1.moveToNext()){ String data1=cursor1.getString(0); String mimetype=cursor1.getString(1); //區分類型 if ("vnd.android.cursor.item/name".equals(mimetype)){ contact.setName(data1); } else if ("vnd.android.cursor.item/phone_v2".equals(mimetype)){ contact.setPhone(data1); } } //把contact放入集合 contacts.add(contact); } } return contacts; } }
創建一個Contact封裝類
public class Contact { private String id; private String name; private String phone; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } }
查詢手機內聯系人