Contact.java
package com.zhaoda.zxy.listview;
/**
* Created by ZXY on 2016/6/7.
*/
public class Contact {
private String id;
private String name;
private String email;
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 getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
@Override
public String toString() {
return "Contact{" + "id='" + id + '\'' + ", name='" + name + '\'' + ", email='" + email + '\'' + ", phone='" + phone + '\'' + '}';
}
}
ReadContactUtils.java
package com.zhaoda.zxy.listview;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
import java.util.ArrayList;
import java.util.List;
/**
* Created by ZXY on 2016/6/7.
*/
public class ReadContactUtils {
public static List<Contact> readContact(Context context) {
List<Contact> contactlists = new ArrayList<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) {
//创建javabean对象
Contact contact = new Contact();
contact.setId(contact_id);
//查询的不是data表而是view_data的视图
Cursor dataCursor = context.getContentResolver().query(datauri, new String[]{"data1", "mimetype"}, "raw_contact", null, null);
while (dataCursor.moveToNext()) {
String data1 = dataCursor.getString(0);
String mimetype = dataCursor.getString(1);
if ("vnd.android.cursor.item/name".equals(mimetype)) {
System.out.println("姓名:" + data1);
contact.setName(data1);
} else if ("vnd.android.cursor.item/phone_v2".equals(mimetype)) {
System.out.println("电话号码:" + data1);
contact.setPhone(data1);
} else if ("vnd.android.cursor.item/email_v2".equals(mimetype)) {
System.out.println("邮箱:" + data1);
contact.setEmail(data1);
}
}
contactlists.add(contact);
}
}
return contactlists;
}
}