这里有几件事情我无法弄清楚,并能找到其他人 张贴在讨论:问题与新老跟API
1. 在新的API
ContactsContract。 AggregationExceptions表并没有真正对 工作我:
当我尝试插入一行到表中,它给了我这个错误:
07-13 14:20:09.399: ERROR/XXXXX(3074): java.lang.UnsupportedOperationException: URI: content://com.android.contacts/aggregation_exceptions, calling user: ............
我的代码在这里:
ContentValues values = new ContentValues();
values.put(AggregationExceptions.RAW_CONTACT_ID1,
String.valueOf(oldRawContactId));
values.put(AggregationExceptions.RAW_CONTACT_ID2,
String.valueOf(newRawContactId));
values.put(AggregationExceptions.TYPE, AggregationExceptions.TYPE_KEEP_TOGETHER);
mContentResolver.insert(AggregationExceptions.CONTENT_URI, values);
,我敢肯定,这两个原始接触式ID存在。
2.in旧的API:
当我创建通讯录一组,该组的名称将不显示(或不正确显示)
下面的代码:
ContentValues values = new ContentValues();
values.put(Contacts.Groups.SHOULD_SYNC, 1);
values.put(Contacts.Groups.SYSTEM_ID, mGroupID);
values.put(Contacts.Groups.NAME, mGroupTitle);
mContentResolver.insert(Contacts.Groups.CONTENT_URI, values);
3.in旧API:
当我插入用于接触一个自定义的IM联系人的方法,该数据被插入并正确显示,但使用d用户不能编辑的接触默认联系应用程序了。如果我删除了联系方式,用户可以再次编辑联系人。
这里的插入的联系方式的代码:
ContentValues values = new ContentValues();
values.put(ContactMethods.PERSON_ID, newContactId);
values.put(ContactMethods.KIND, Contacts.KIND_IM);
values.put(ContactMethods.TYPE, ContactMethods.TYPE_CUSTOM);
values.put(ContactMethods.AUX_DATA, ContactMethods.encodeCustomImProtocol(MYIM_PROTOCOL));
values.put(ContactMethods.DATA, buddyId);
values.put(ContactMethods.ISPRIMARY, 0);
values.put(ContactMethods.LABEL, IM_LABEL);
mContentResolver.insert(ContactMethods.CONTENT_URI, values);