Android通讯录(一)
理解MimeType:根据查询条件的MimeType 决定Data表的data1~data15的值。
对于MimeType的值有CommonDataKinds.xxxx.CONTENT_ITEM_TYPE。查询的得到的结果为
CommonDataKinds.xxxx.xxx。
- public class ContactDataModel {
- private Context mContext;
- private ContentResolver mContentResolver;
- public ContactDataModel(Context mContext) {
- this.mContext = mContext;
- mContentResolver=mContext.getContentResolver();
- }
- public List<HashMap<String,String>> getContactsByName(String mName){
- mName=mName.trim();
- List<HashMap<String,String>> list=new ArrayList<HashMap<String,String>>();
- boolean ifQueryAll=false;
- Cursor cn =null;
- Cursor cu= null;//cu姓名游标,cn电话游标
- String selection=null;//查询条件
- ifQueryAll=mName.equals("")?true:false;
- //根据ifQuery判断查询条件
- if (ifQueryAll) {
- selection=Data.MIMETYPE+"='"+CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE+"'";
- }else{
- selection=Data.MIMETYPE+"='"+CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE+"' AND "+
- CommonDataKinds.StructuredName.DISPLAY_NAME+"LIKE '%'"+mName+"%'";
- }
- //根据姓名查询出通讯录ID与完整姓名。
- cu=mContentResolver.query(Contacts.CONTENT_URI,new String[]{Data.RAW_CONTACT_ID,StructuredName.DISPLAY_NAME},
- selection, null, null);
- //根据通讯录ID查询电话号码的条件
- selection=Data.MIMETYPE+"='"+CommonDataKinds.Phone.CONTENT_ITEM_TYPE+"' AND "+ Data.RAW_CONTACT_ID+" =? ";
- //执行查询
- while (cu.moveToNext()) {
- String mContactId=String.valueOf(cu.getInt(0));
- cn=mContentResolver.query(Contacts.CONTENT_URI, new String[]{CommonDataKinds.Phone.NUMBER},
- selection, new String[]{mContactId}, null);
- while (cn.moveToNext()) {
- HashMap<String,String> map=new HashMap<String, String>();
- map.put("display_name",cu.getString(1));
- map.put("phone_number",cn.getString(0));
- list.add(map);
- }
- }
- cu.close();
- cn.close();
- return list;
- }
- }
转载于:https://blog.51cto.com/linwb/1113201
Android通讯录(一)相关推荐
- Jquery Mobile设计Android通讯录第二章
本文是jQuery Mobile设计Android通讯录系统教程的第二篇,在上一篇教程中(http://publish.itpub.net/a2011/0517/1191/000001191561.s ...
- android通讯录管理(获取联系人,通话记录,短信消息),Android通讯录管理(获取联系人、通话记录、短信消息)(二)...
Android通讯录管理(获取联系人.通话记录.短信消息)(二) 前言:上一篇博客介绍的是获取联系人的实现,本篇博客将介绍通话记录的实现. 界面布局: /Contact_Demo/res/layout ...
- android通讯录备份恢复代码逻辑
android通讯录备份恢复 新增和修改 目前用的是新增,云端判断返回的手机号是否为空 /*** 向手机中录入联系人信息** @param contactListBean 要录入的联系人信息*/pub ...
- Android通讯录导入到Iphone
现在很多人都使用Iphone手机,但是怎样将Android通讯录导入到Iphone中是一个很多人会碰到的问题.查找了很多资料,有的说是用第三方软件同步,这个也许可以,但是我的没有成功,比如说91同步助 ...
- android通讯录完整功能实现,Android实现通讯录功能
本文实例为大家分享了Android通讯录案例,供大家参考,具体内容如下 实战演练--通讯录 1.功能描述:通过SQLite实现数据库的增删改查 2.技术要点:SQLite的基本操作 3.实现步骤: ① ...
- 简易android通讯录
android通讯录 文章目录 android通讯录 (1)初步实现的功能: (2)主界面布局 (3)设计思路 (4)开发技术 (5)核心方面 5.1数据库设计方面 5.2JavaBean 5.3Ar ...
- Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选取联系人
Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选取联系人 公司最近的项目中遇到一个需求需要读取通讯录联系人,并需要支持对联系人的模糊查询及批量选取,网上找了好几个例子,模糊查询 ...
- android通讯录demo
android通讯录demo 视频演示 主要代码实现类 界面样式 项目下载链接 视频演示 android通讯录 主要代码实现类 MainActivity package com.example.mai ...
- android联系人管理源码,计算机毕业课程设计源码-145安卓Android通讯录管理系统
file://C:\Users\Administrator\Desktop\安卓Android通讯录管理系统 (1 folders, 0 files, 0 bytes, 15.73 MB in tot ...
- Android通讯录模糊匹配搜索实现 号码 首字母 简拼 全拼
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Andr ...
最新文章
- 机器学习预测地震的未来
- Git中的工作区(Working Directory)、暂存区(stage)和历史记录区(history)
- 阿里云容器Kubernetes监控(七) - Prometheus监控方案部署
- 提炼SLG的“决策观”,《三国志14》做了哪些“加减法”
- Nessus扫描器的使用
- 360解压电脑版安装包_迅捷pdf转换器电脑版安装包下载-迅迅捷pdf转换器安装包免费下载...
- EF里查看/修改实体的当前值、原始值和数据库值
- BP反向传播算法推导
- 2018国家网络安全宣传周系列漫画
- google浏览器呗7654流氓解除
- 猜数字游戏 由计算机,猜数字游戏实验报告
- 网络(八)之OSPF协议的原理及配置
- Windows server 2012 主域+辅域
- WPS 加载项开发说明
- torch.nn.Conv2d() 用法讲解
- 大数据时代,AIoT在智慧社区的深度应用
- 数据结构--三角矩阵的压缩存储
- 沈阳城市学院计算机,沈阳城市学院通识教育学院在计算机设计大赛中获奖
- Matlab T型速度规划
- 软件配置管理的目标和任务