很简单,只需按该名称查询所有联系人,然后使用代码将其添加到组中:
public void addToGroupByName(String name, long groupId) {
String[] projection = new String[] { Data.RAW_CONTACT_ID };
String selection = "(" + Data.MIMETYPE + "=?) AND (" + StructuredName.DISPLAY_NAME + "=?";
String[] selectionArgs = new String[] { StructuredName.CONTENT_ITEM_TYPE, name };
Cursor cur = contentResolver.query(Data.CONTENT_URI, projection, selection, null, null);
while (cur != null && cur.moveToNext()) {
long rawId = cur.getLong(0);
addContactToGroup(rawId, groupId);
}
if (cur != null) {
cur.close();
}
}
-
RawContact ID是一个长的,不是字符串
-
组ID也很长
-
由于名称不是唯一标识符,并且用户可能有多个同名联系人,因此此代码可能会产生意外的后果,因此请确保您知道自己在做什么