Android 保存联系人,包括部门\职位\传真\地址\照片
private void toSaveContactInfo() {
ContentValues values = new ContentValues();
// 首先向RawContacts.CONTENT_URI执行一个空值插入,目的是获取系统返回的rawContactId
Uri rawContactUri = context.getContentResolver().insert(
RawContacts.CONTENT_URI, values);
long rawContactId = ContentUris.parseId(rawContactUri); // 往data表入姓名数据
values.clear();
values.put(Data.RAW_CONTACT_ID, rawContactId);
values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE);
values.put(StructuredName.GIVEN_NAME, mEmployee.getEmployeeName());
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// 添加用户名 职位 部门
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Organization.CONTENT_ITEM_TYPE);
values.put(Organization.LABEL, mEmployee.getUserName());
values.put(Organization.TITLE, mEmployee.getJobName());
values.put(Organization.COMPANY, mEmployee.getOrgName());
values.put(Organization.TYPE, Organization.TYPE_WORK);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// 添加邮箱
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Email.CONTENT_ITEM_TYPE);
values.put(Email.DATA, mEmployee.getOfficeEmail());
values.put(Email.TYPE, Email.TYPE_WORK);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// 添加手机
if (mEmployee.getMobile().contains("或")) {
final String[] tNumbers = mEmployee.getMobile().split("或");
for (String tNum : tNumbers) {
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
values.put(Phone.NUMBER, tNum);
values.put(Phone.TYPE, Phone.TYPE_WORK_MOBILE);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI,
values);
}
} else {
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
values.put(Phone.NUMBER, mEmployee.getMobile());
values.put(Phone.TYPE, Phone.TYPE_WORK_MOBILE);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
}
// 添加固定电话
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
values.put(Phone.NUMBER, mEmployee.getOfficeTel());
values.put(Phone.TYPE, Phone.TYPE_WORK);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// 添加传真
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
values.put(Phone.NUMBER, mEmployee.getFax());
values.put(Phone.TYPE, Phone.TYPE_FAX_WORK);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// 添加地址 邮编
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, StructuredPostal.CONTENT_ITEM_TYPE);
values.put(StructuredPostal.FORMATTED_ADDRESS, mEmployee.getAddress());
values.put(StructuredPostal.POSTCODE, mEmployee.getPostCode());
values.put(StructuredPostal.TYPE, StructuredPostal.TYPE_WORK);
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// 添加头像
values.clear();
values.put(
android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID,
rawContactId);
values.put(Data.MIMETYPE, Photo.CONTENT_ITEM_TYPE);
// if (mEmployee.getGender().equals("2"))// 为女,保存女性默认头像
// values.put(Photo.PHOTO,
// getDrawableToByte(R.drawable.oa_contact_head_f));
// else
// 男
values.put(Photo.PHOTO, getDrawableToByte(R.drawable.oa_contact_head_m));
context.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
// waitingDialog.dismiss();
isSave = true;
// Toast.makeText(context,
// "已保存" + mEmployee.getEmployeeName() + "的联系信息至本地通讯录",
// Toast.LENGTH_SHORT).show();
}
Android 保存联系人,包括部门\职位\传真\地址\照片的更多相关文章
- Android 获取联系人手机号码、姓名、地址、公司、邮箱、生日
public void testGetAllContact() throws Throwable { //获取联系人信息的Uri Uri uri = ContactsContract.Contacts ...
- [android] 保存联系人到系统通讯录
对应着读联系人,把数据写进去,市场上的社交类应用经常会有这样的功能 向raw_contacts表中添加一个id 向data表里面添加对应的数据 获取ContentResolver对象,通过getCon ...
- android管理联系人操作
ContentProvider扩展之管理系统联系人 我们都知道ContentProvider是用来共享数据的,然而android本身就提供了大量的ContentProvider,例如联系人信息,系统的 ...
- Android 查看联系人电话和姓名(ContentProvider)
1.介绍 2.使用方法 3.在AndroidManifest.xml文件中添加相关设置 <uses-permission android:name="android.permissio ...
- 57.部门职位管理 ExtJs 展示
1.jobInfo.jsp <%@ page language="java" pageEncoding="UTF-8"%> <script t ...
- Android系统联系人全特效实现(下),字母表快速滚动
在上一篇文章中,我和大家一起实现了类似于Android系统联系人的分组导航和挤压动画功能,不过既然文章名叫做<Android系统联系人全特效实现>,那么没有快速滚动功能显然是称不上&quo ...
- android系统联系人分组特效实现(2)---字母表快速滚动
要实现这种功能,只需要在 android系统联系人分组特效实现(1)---分组导航和挤压动画 的基础上再加上一个自定义控件即可完成. 1.新建项目,继续新建一个java类,BladeView,用 ...
- Android系统联系人全特效实现(上),分组导航和挤压动画
记得在我刚接触Android的时候对系统联系人中的特效很感兴趣,它会根据手机中联系人姓氏的首字母进行分组,并在界面的最顶端始终显示一个当前的分组.如下图所示: 最让我感兴趣的是,当后一个分组和前一个分 ...
- Android 获取手机(ios,android)的设备唯一码(mac地址, IMEI)
{ /*获取手机(ios,android)的设备唯一码(mac地址, IMEI)2018年02月16日 ⁄ 综合 ⁄ 共 2697字 ⁄ 字号 小 中 大 ⁄ 评论关闭 app中总会用到客户端下载量数 ...
随机推荐
- (转)IOS UITableView学习
转自:http://www.cnblogs.com/smileEvday/archive/2012/06/28/tableView.html 作者:一片枫叶 看TableView的资 ...
- 理解matplotlib绘图
matplotlib是基于Python语言的开源项目,旨在为Python提供一个数据绘图包.Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件.它能让使用者很轻松地将数据图形化 ...
- Java核心技术II读书笔记(二)
ch2 XML 有两种XML文档结构,DTD和Schema,用解释文档构成规则,这些规则指定了每个元素俺的合法子元素和属性. DTD DTD有多种提供方式,可以像下面这样加到XML中: <?xm ...
- RAC 之 RMAN 备份
这篇主要介绍的是RAC 环境下的RMAN 备份. 关于Oracle 备份与恢复的一些理论知识参考我的Blog: Oracle 备份 与 恢复 概述 http://blog.csdn.net ...
- ADB Offline
终极可能原因:版本太旧 http://stackoverflow.com/questions/14993855/android-adb-device-offline-cant-issue-comman ...
- Bootstrap学习笔记上(带源码)
阅读目录 排版 表单 网格系统 菜单.按钮 做好笔记方便日后查阅o(╯□╰)o bootstrap简介: ☑ 简单灵活可用于架构流行的用户界面和交互接口的html.css.javascript工具集 ...
- Php 笔记2-----手机端 与 php服务器的通信
对于 手机端 和 php服务器的通信,是不存在表单这一概念的 ,除非自己去实现, 所以通常情况下步骤是: 假定上传的是字符串. 1 手机端的流程是 把文件或者字符串,转化为 特定的流. 2 通过h ...
- HTML和URL比较
1.录制脚本的基本原则 2.HTML和URL based script介绍 3.选择录制方式原则 4.HTML based script设置
- Android百度地图开发(二)地图覆盖物
上一篇文章写道如何在一个mapview中简单的显示地图:本次学习一下如何在地图上添加一些覆盖物. 1.设置显示交通地图: // 显示交通地图 mapView.setTraffic(true); 2.设 ...
- sql server 2008 r2 出问题
1.想利用sql2008的数据挖掘功能,以为是没有安装全,所以就卸载了. (1)利用Windows Installer Clean UP将以前的卸载干净 (2)出现了Could not open ke ...