Android2.0 如何设置和读取联系人的分组(Group)
其实联系人分组实现原理是:
根据Data.MIMETYPE为GroupMembership类型,data1中的组id来进行分组。
设置ContactsContract.Data.CONTENT_URI中的ContactsContract.Data.MIMETYPE 为ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE类型,data1字段为某一分组的组ID,该值可查询ContactsContract.Groups.CONTENT_URI(该表保存了各分组的组_id,组名称title等分组信息)得到。
例如查询具有某一分组的所有联系人的ContactsContract.RawContacts._ID,代码如下
- public static final String[] RAW_PROJECTION = new String[]{
- ContactsContract.Data.RAW_CONTACT_ID,
- };
- public static final String RAW_CONTACTS_WHERE =
- ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID +"=?" +" and " +
- ContactsContract.Data.MIMETYPE+ "=" + "'" +
- ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE + "'" ;
复制代码//具有同一组id的原始联系人的id
- Cursor mMemberRawIds =rc.query(URI, RAW_PROJECTION,
- RAW_CONTACTS_WHERE,
- new String[]{""+groupId},
- "data1 asc");
复制代码
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论