GetContactInfoUtils(一个获取手机联系人名称,电话,头像的工具类)
用途:获取联系人名称,电话,头像
功能:
1.getContactInfo:获取联系人名称,电话,头像唯一标识
2.getImg:根据唯一标识去获取Contract表里的图片/头像资源
小提:需要权限,需与Javabean结合使用
//获取联系人名称,电话,头像
public class GetContactInfoUtils {//获取联系人名称,电话,头像唯一标识public static List<ContactInfo>getContactInfo(Context context){List<ContactInfo> list=new ArrayList<>();//创建获取联系人的内容解析者ContentResolver resolver = context.getContentResolver();//ContactsContract.CommonDataKinds:获取到data表 , Phone.CONTENT_URI:获取联系人数据库的URIUri uri= ContactsContract.CommonDataKinds.Phone.CONTENT_URI;//定义我们所需要查询的条件String[] projection=new String[]{ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,//获取联系人名称ContactsContract.CommonDataKinds.Phone.NUMBER,//获取联系人号码ContactsContract.CommonDataKinds.Phone.CONTACT_ID//获取联系人的唯一标识};//获取Cursor cursor=resolver.query(uri,projection,null,null,null);Log.e("YFF", "getContactInfo: ");//循环while(cursor.moveToNext()){String name=cursor.getString(0);Log.e("YFF", "getContactInfo: "+name);String unmber=cursor.getString(1);int id=cursor.getInt(2);//为了方便管理,将获取的信息存放到实体类中(JavaBean)ContactInfo contactInfo=new ContactInfo();contactInfo.setName(name);contactInfo.setUnmber(unmber);contactInfo.setId(id);//添加到容器list.add(contactInfo); }return list;}//根据唯一标识去获取Contract表里的图片/头像资源public static Bitmap getImg(Context context,int i){ContentResolver contentResolver=context.getContentResolver();//定义URl,但是不能再向上面拿名称那样去取得字段Uri uri=Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI,i+"");//ContactsContract.Contacts:相当于联系人APP的数据库中Contact表,通过openContactPhotoInputStream拿到流对象InputStream is=ContactsContract.Contacts.openContactPhotoInputStream(contentResolver,uri);//将拿到的资源的转换成我们所需要的图片Bitmap biemap= BitmapFactory.decodeStream(is);//关闭流if (is!=null){try {is.close();} catch (IOException e) {e.printStackTrace();}}return biemap;}
}
使用ContentResolver(内容解析者)获取联系人名称,电话,头像
GetContactInfoUtils(一个获取手机联系人名称,电话,头像的工具类)相关推荐
- android的contentResolver,contentProvider简介(附带个获取手机联系人及头像实例)
介绍 android中有个ContentProvider(内容提供者)还有个ContentResolver(内容解析者) 简单来说,contentProvider就是将自己app的数据库共享,使得其他 ...
- android 获取phone实例,Android ContentProvider获取手机联系人实例
在做项目的时候,因为要用到我们自动获取联系人的姓名和电话,就想到了ContentProvider分享数据的功能,这样做既节省了时间,也减少了我们输入错误号码的几率,所以,想在这里把小demo分享给大家 ...
- 获取手机联系人的两种方法
获取手机联系人的两种方法 第一种方法比较简单 就几句话 但是获取的信息不完善 第二种方法比较难 代码比较多 获取的信息全 须要加的权限 : <uses-permission android:na ...
- Android获取手机联系人匹配用户表并按字母A Z排序展示
1.前言 最近在做公司项目的时候遇到一个添加手机联系人的需求,主要有以下几个功能点: 读取联系人:读取用户手机上的通讯录里的联系人列表 好友排序:按照拼音顺序对好友进行排序,兼容英文数字符号等 字母索 ...
- Android获取手机联系人匹配用户表并按字母A-Z排序展示
1.前言 最近在做公司项目的时候遇到一个添加手机联系人的需求,主要有以下几个功能点: 读取联系人:读取用户手机上的通讯录里的联系人列表 好友排序:按照拼音顺序对好友进行排序,兼容英文数字符号等 字母索 ...
- java 获取手机联系人_Android 读取手机联系人、拨号、发送短信及长按菜单的操作...
本示例实现了读取手机联系人,拨号.发送短信及长按出现菜单选项的操作↓ 1.Andrid项目结构图↓主要操作图中红色方框内的文件. 2.首先布局代码如下↓ a, main.xml 程序运行的主界面,主要 ...
- android 使用内容提供者获取手机联系人
最近在学习安卓的相关内容, 正好在写获取手机联系人的程序, 就想到了内容提供者, 这里有几点需要注意, 写到这里, 以后方便自己查询. 1. 手机联系人的数据库是存储在 data/data/com.a ...
- 获取手机联系人,并通过拼音字母快速查询
获取手机联系人,并通过拼音字母快速查询. 通过工具类转换联系人首字的首字母,并排序显示. 通过画布的方式在布局右侧添加快速查询的字母布局 显示效果如下图: 右侧点击[★]时回到顶部: 滑动到[N]时N ...
- 关于QQ群头像以及微信讨论组头像的工具类
QQ群头像以及微信讨论组头像工具类介绍 介绍: 由于段时间公司项目需求,在翻了网上很多代码后发现,很多人用的是自定义View的办法来实现此类头像的效果,但是,这样一来就必须改变项目中原有的控件,而且 ...
最新文章
- 通过CPAN安装Perl模块
- Gene co-expression analysis for functional classification and gene–disease predictions 基因共表达分析的功能分类
- vue导航栏跳转路由
- 2020-11-06 Python OpenCV给证件照换底色
- 一次编译libmono.so的记录
- Mongodb内存管理和使用情况情况查询
- Mininet的内部实现原理简介
- ENVI学习总结(一)——自定义坐标系
- 函数和存储过程的区别
- springboot集成微信支付普通商户版之H5支付
- canvas动画:黑客帝国_使用Canvas API进行动画处理-第3部分:重力和动态渲染
- 学习笔记【基金】【理财】【定投】...
- 兆骑科创创新创业服务平台,海内外高层次人才引进,活动赛事
- 【Python百日基础系列】Day02-Python语法基础
- Python爬虫可视化第2季-舌尖上的“小龙虾”
- DDoS 保护、缓解和防御:8 个基本技巧
- 根据关键字位置为PDF添加文本和图片
- 南大通用与安超云完成兼容互认证 携手助力国家网络安全发展
- Matlab中figure灯光的设置
- C语言:字符函数与字符串函数(一)
热门文章
- 用FFmpeg将WAV(2通道)换成单声道(1通道)
- nodejs毕业设计源码大学生心理咨询微信小程序
- java连接sftp工具类
- 计算机控制技术输入输出通道实验,计算机控制技术实验报告.doc
- Oracle——删除用户以及用户下数据
- DataStage 简介
- 基于深度强化学习的车道线检测和定位(Deep reinforcement learning based lane detection and localization) 论文解读+代码复现
- HTTP 301和302状态码
- 玩转群晖NAS套件系列四:Audio Station安装使用保姆级教程!
- 学习写微信小程序(2)