Android查询联系人信息的功能主要是实现查询联系人的姓名,电话,邮件地址,
String columns[] = new String[] { People._ID, People.NAME,
People.NUMBER, People.PRIMARY_EMAIL_ID,People.PRIMARY_ORGANIZATION_ID, People.
PRIMARY_PHONE_ID, People.DISPLAY_NAME,People.IM_ACCOUNT, People.IM_HANDLE, People.PHONETIC_NAME, People.TYPE };
Uri mContacts = People.CONTENT_URI;
Cursor cur = managedQuery(mContacts, columns, // 要返回的数据字段
null, // WHERE子句
null, // WHERE 子句的参数
People.NAME // Order-by子句
);
if (cur.moveToFirst()) {
Cursor newcur = null;
do {
// 获取字段的值
String name = cur.getString(cur.getColumnIndex(People.NAME));
String phoneNo = cur.getString(cur.getColumnIndex(People.NUMBER));
String peopleId = cur.getString(cur.getColumnIndex(People._ID));
String[] PROJECTION = new String[] { Contacts.ContactMethods._ID,
Contacts.ContactMethods.KIND, Contacts.ContactMethods.DATA };newcur = managedQuery(Contacts.ContactMethods.CONTENT_URI,
PROJECTION, Contacts.ContactMethods.PERSON_ID + "=\'"+ cur.getLong(cur.getColumnIndex(People._ID)) + "\'", null, null);
startManagingCursor(newcur);
String email = "";
if (newcur.moveToFirst()) {
email = newcur.getString(newcur.getColumnIndex
(Contacts.ContactMethods.DATA));}
log.info("name = " + name + "
phoneNo = " + phoneNo + "email = " + email);if (email != null && !"".equals(email) &&
email.trim().length() != 0) {//此处可以取到联系人邮件
}
} while (cur.moveToNext());
if (newcur != null) {
newcur.close();//用完得关闭吧
}
}
if (cur != null)
cur.close(); //用完得关闭吧
上一篇:Android中如何实现电源管理
下一篇:Android中如何实现画图