Intent intent = new Intent(); intent.setAction("android.intent.action.GET_CONTENT"); intent.setType("vnd.android.cursor.item/phone_v2"); startActivityForResult(intent, 1);
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { Cursor c = null; if (requestCode == 1) { try { if (data != null) { c = getContentResolver().query(data.getData(), null, null, null, null); } if (c != null) { c.moveToFirst(); String name = ""; String number = "";
name = c.getString(c .getColumnIndexOrThrow("display_name"));// Contacts.People.NAME number = c.getString(c.getColumnIndexOrThrow("data1"));// Contacts.People.NUMBER
intent.setAction("android.intent.action.GET_CONTENT");
intent.setType("vnd.android.cursor.item/phone_v2");
startActivityForResult(intent, 1);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Cursor c = null;
if (requestCode == 1) {
try {
if (data != null) {
c = getContentResolver().query(data.getData(), null, null,
null, null);
}
if (c != null) {
c.moveToFirst(); String name = "";
String number = "";
name = c.getString(c
.getColumnIndexOrThrow("display_name"));// Contacts.People.NAME
number = c.getString(c.getColumnIndexOrThrow("data1"));// Contacts.People.NUMBER
c.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
super.onActivityResult(requestCode, resultCode, data);
}
我要的是能实现Button打开通讯录,并能使用通讯录里面的数据,一般手机都有这个Button啊,该如何实现呢?
如果是自己做,像楼上几位说的使用provider,使用正确的uri(这个要你上网找找 应该查Contacts data表信息的那种),根据查询的结果做个list选择列表,只要你能正确获取想要的数据,后面的随便你折腾了。