這時候,我們可以試試将用來删除表 raw_contacts 中資料的條件字段改為 CONTACT_ID 字段試試,本人原來是以display_name為條件字段,結果删除不成功,後改為 CONTACT_ID,就成功删除,有需要的可以試試(其中:userSQL_id 為系統通訊錄表中的條目的ID)
/**
*
* 删除手機電話薄中的一條資料
* */
public void deleteContacts(int userSQL_id)
{
Uri uri = Uri.parse("content://com.android.contacts/data");
ContentResolver resolver = context.getContentResolver();
resolver.delete(uri, "raw_contact_id=?",
new String[] { userSQL_id + "" });
uri = Uri.parse("content://com.android.contacts/raw_contacts");
resolver.delete(uri, "CONTACT_ID=?", new String[] { userSQL_id + "" });
// context.getContentResolver()
// .delete(ContentUris.withAppendedId(RawContacts.CONTENT_URI,
// userSQL_id), null, null);
}