您的位置:首页 > 移动开发 > Android开发

android 导入联系人基本信息到电话簿

2015-08-20 11:29 211 查看
1.主方法:

private void importAddrBook(Staff staff) throws Exception {

ContentValues values = new ContentValues();

// * 首先向RawContacts.CONTENT_URI执行一个空值插入,目的是获得系统返回的rawContactId

Uri rawContactUri = getActivity().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, staff.getName());

getActivity().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values);

// 写入办公电话;

values.clear();

values.put(Data.RAW_CONTACT_ID, rawContactId);

values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);

values.put(Phone.NUMBER, staff.getOfficeTel());

values.put(Phone.TYPE, Phone.TYPE_WORK);

getActivity().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values);

// 往data表里写入手机号码

values.clear();

values.put(Data.RAW_CONTACT_ID, rawContactId);

values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);

values.put(Phone.NUMBER, staff.getMobile());

values.put(Phone.TYPE, Phone.TYPE_MOBILE);

getActivity().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values);

// 往data表里写入虚拟号;

values.clear();

values.put(Data.RAW_CONTACT_ID, rawContactId);

values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);

values.put(Phone.NUMBER, staff.getVirtualNo());

values.put(Phone.TYPE, Phone.TYPE_CUSTOM);

getActivity().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values);

/*

* values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId);

* values.put(Data.MIMETYPE, Email.CONTENT_ITEM_TYPE);

* values.put(Email.DATA, "liming@itcast.cn"); values.put(Email.TYPE,

* Email.TYPE_WORK);

* this.getContentResolver().insert(android.provider.ContactsContract

* .Data.CONTENT_URI, values);

*/

}

2:Staffle类:

@DatabaseTable(tableName = "staff")

public class Staff implements Serializable {

private static final long serialVersionUID = 6380582055322229386L;

@DatabaseField(id = true)

private String staffId;

@DatabaseField

private String name;

@DatabaseField

private String namePinyin;

@DatabaseField

private String post;

@DatabaseField

private String deptId;

@DatabaseField

private String deptName;

@DatabaseField

private String secDeptId;

@DatabaseField

private String secDeptName;

@DatabaseField

private String officeTel;

@DatabaseField

private String mobile;

@DatabaseField

private String virtualNo;

@DatabaseField

private boolean isDelete;

//省略get()和set()方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: