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;