我備份和恢復接觸rawContacts,我能夠做到這一點,但在使用ContactsContract.AggregationExceptions
rawcontacts用於連接觸點(加入接點)的聚合如果我加入3個觸點,說跟A(主)和聯繫B(鏈接)和C(連接) 我做的備份和恢復,爲新創建的ID與正確的映射,我更新了ContactsContract.AggregationExceptions.CONTENT_URI
與下面的代碼:如何聚合使用aggregationException內容correclty
private boolean aggregateContactLinks() {
ContentResolver cr = context.getContentResolver();
int listCount = linkList.size();
ContentValues values = new ContentValues(3);
Log.i(tag, "aggregating contacts");
for (int i=0; i<listCount; i++) {
values.put(AggregationExceptions.RAW_CONTACT_ID1,
linkList.get(i).newId1);
values.put(AggregationExceptions.RAW_CONTACT_ID2,
linkList.get(i).newId2);
values.put(AggregationExceptions.TYPE,
AggregationExceptions.TYPE_KEEP_TOGETHER);
Log.i(tag," new master id(id1) :"+linkList.get(i).newId+"\nlinkid2 :"+newId2);
Log.i(tag,
"result :"
+ cr.update(AggregationExceptions.CONTENT_URI,
values, null, null));
Log.i(tag, "\nupdated one contact");
}
values.clear();
return true;
}
輸出,在手機上我可以看到鏈接的內容,但在顯示名稱的聯繫人是c,而不是一個
備份
備份後,刪除聯繫人和恢復
後,任何人都可以知道究竟我要去錯,在此先感謝
前
你是如何做「備份」? –