我正在尝试永久删除一个 Android 联系人组并使用了 Sync 参数,并且它总是显示该记录只是被标记为已删除而不是物理删除。任何人都可以解释如何/何时(如果有的话)永久删除合同组行或显示一段代码来演示如何执行此操作?我要删除的记录是我添加的记录,因此它们不是只读的。
链接回https://stackoverflow.com/a/21376905/5398898
我的删除代码:
private void RemoveGroup()
{
TextView tv = (TextView) this.findViewById(R.id.helloworld);
int[] startId = {10};//{6, 7, 8, 9, 10, 11};
String groupName = "My New Contacts";
Uri mUri = ContactsContract.Groups.CONTENT_URI;
mUri.buildUpon().appendQueryParameter(ContactsContract.CALLER_IS_SYNCADAPTER, "true").build();
for (int n = 0; n < startId.length; n++) {
groupCount = startId[n];
ContentValues values = new ContentValues();
values.put(ContactsContract.Groups._ID, groupCount);
try {
getContentResolver().delete(mUri, values.toString(),null);
} catch (Exception ex) {
tv.setText(ex.getMessage());
}
}
}
读取组时的结果:
图片可以在这里找到http://i.stack.imgur.com/5OOfc.png