如何有效的获取通讯录中的工作 公司等信息
2016-07-07 13:54
239 查看
在获取本地通讯录信息的时候,由于很多字段的第二键值相同,所以在获取公司职位等信息的时候,不可与前面的姓名号码等同时获取,而是先存储id,姓名等信息,然后通过数据库筛选出只包含公司职位的字段值,然后再存储到本地。流程如下:
(1)首先获取id姓名等信息
Uri uri =ContactsContract.CommonDataKinds.Phone.CONTENT_URI;
cursor = context.getContentResolver().query(uri,
new String[] {"display_name", "sort_key", "contact_id",
"data1" }, null, null, "sort_key");
if(cursor.moveToFirst()) {
do {
LinkManModel contact = newLinkManModel();
String contact_phone = cursor.getString(cursor
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
……
}
while(cursor.moveToNext());
}
(2)获取公司信息
CursororgCursor = context.getContentResolver().query(ContactsContract.Data.CONTENT_URI, new String[]{ContactsContract.CommonDataKinds.Organization.COMPANY,ContactsContract.CommonDataKin ds.Organization.TITLE,
"contact_id"},
ContactsContract.CommonDataKinds.Nickname.CONTACT_ID+"="+"contact_id"+"AND "+
ContactsContract.Data.MIMETYPE+"='"+ContactsContract.CommonDataKinds.Organization.CONTENT_IT EM_TYPE+"'", null, null);
if(orgCursor.moveToFirst()){
do{
String company =orgCursor.getString(orgCursor.getColumnIndex(ContactsContract.CommonDataKinds.Organization.COMPANY));
String position =orgCursor.getString(orgCursor.getColumnIndex(ContactsContract.CommonDataKinds.Organization.TITLE))
}while(orgCursor.moveToNext());
}
orgCursor.close();
(1)首先获取id姓名等信息
Uri uri =ContactsContract.CommonDataKinds.Phone.CONTENT_URI;
cursor = context.getContentResolver().query(uri,
new String[] {"display_name", "sort_key", "contact_id",
"data1" }, null, null, "sort_key");
if(cursor.moveToFirst()) {
do {
LinkManModel contact = newLinkManModel();
String contact_phone = cursor.getString(cursor
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
……
}
while(cursor.moveToNext());
}
(2)获取公司信息
CursororgCursor = context.getContentResolver().query(ContactsContract.Data.CONTENT_URI, new String[]{ContactsContract.CommonDataKinds.Organization.COMPANY,ContactsContract.CommonDataKin ds.Organization.TITLE,
"contact_id"},
ContactsContract.CommonDataKinds.Nickname.CONTACT_ID+"="+"contact_id"+"AND "+
ContactsContract.Data.MIMETYPE+"='"+ContactsContract.CommonDataKinds.Organization.CONTENT_IT EM_TYPE+"'", null, null);
if(orgCursor.moveToFirst()){
do{
String company =orgCursor.getString(orgCursor.getColumnIndex(ContactsContract.CommonDataKinds.Organization.COMPANY));
String position =orgCursor.getString(orgCursor.getColumnIndex(ContactsContract.CommonDataKinds.Organization.TITLE))
}while(orgCursor.moveToNext());
}
orgCursor.close();
相关文章推荐
- CABasicAnimation使用总结
- iOS开发 ☞ git.oschina.net使用详解
- XtraGrid 主/从关系使用
- pacemaker+corosync实现资源调度
- 使用Https
- 深入浅出ES6(六):解构 Destructuring
- mybatis-paginator+mysql 简单案例
- Android 系统开发系列三
- js 根据ID或者Class在指定位置添加div
- Centos 6.5 + Zabbix 3.0
- Android控件架构与自定义控件
- mysql大数据如何优雅地分页
- linux系统中如何进入退出vim编辑器,方法及区别
- 创建带Collection的Mybatis sql语句
- mysql源码rmp包的安装步骤
- C++学习 之 typedef用法小结
- LaTeX 插入pdf文档
- android中自动杀死后台进程的方法
- 百度地图拖动定位
- linux chmod命令详解 精华