查找联系人信息

查找联系人信息
1.联系人系统存在com.android.providers.contacts \ databases\ contacts2.db 这个数据库中
2.系统通过contentprovider  操作联系人数据 其实操作的是如下三张表 
data 存放数据的具体信息
mimetypes  指定数据所对应的类型 phone im email
raw_contacts 表 存放联系人的 id的表 
3.查看源码.找到联系人的Uri  "content://com.android.contacts/contacts"
4.创建一个类.
Uri uri = Uri.parse("content://com.android.contacts/contacts/contact/1/data");
Cursor cursor = getContext().getContentResolver().query(uri,null,"raw_contact_id=?",new String[]{"1"},null);
第一个参数Uri
第二个参数查询那一列,null为查询所以列
第三个参数查询条件
第四个参数查询条件赋值
第五个参数是排序条件.null为不排序
/*if(cursor.moveToFirst()){
String[] columns = cursor.getColumnName(); //获取所有字段
for(int i=0;i<columns.length;i++){
System.out.println(columns[i]);
}
获取所有字段后,找到名字所对应的列名.然后获取名字
cursor.getString(cursor.getColumnIndex("display_name"));
*/

while(cursor.moveToNext()){
if("vnd.android.cursor.item/eamil_v2".equals(cursor.getSting(cursor.getColumnIndex("mimetype")))){
System.out.println("email为"+cursor.getString(cursor.getColumnIndex("data1"));
}
if("vnd.android.cursor.item/phone_v2".equals(cursor.getSting(cursor.getColumnIndex("mimetype")))){
System.out.println("电话为"+cursor.getString(cursor.getColumnIndex("data1"));
}
if("vnd.android.cursor.item/name".equals(cursor.getSting(cursor.getColumnIndex("mimetype")))){
System.out.println("姓名为"+cursor.getString(cursor.getColumnIndex("data1"));
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值