我正在尝试删除某些选定号码的通话记录,代码将在模拟器和我可用于测试的其他两台设备(Q-Mobile A500 和 Sony Ericson X10i)上成功运行并获得所需结果,而客户端在 HTC one 上进行测试它不工作
这是我的代码
String num, queryString = null;
number = number.replace(" ", "");
number = number.replace("-", "");
if (number.length() > 10) {
num = number.substring(number.length() - 10, number.length());
queryString = " LIKE '%" + num + "%'";
} else {
queryString = "=" + number;
}
// String queryString = "NUMBER=" + number;
Uri allCalls = Uri.parse("content://call_log/calls");
context.getContentResolver().delete(allCalls,
android.provider.CallLog.Calls.NUMBER + queryString, null);
context.getContentResolver().delete(
android.provider.CallLog.Calls.CONTENT_URI,
android.provider.CallLog.Calls.NUMBER + queryString, null);
我试图删除两个查询结果相同但它不能在 HTC one 上工作
最佳答案
您应该通过通话 ID 删除您的通话记录,这可能会有所帮助。
int id = Activity_Name.this.getContentResolver().delete(android.provider.CallLog.Calls.CONTENT_URI,"_ID = "+ calls_id_list.get(i),null);
if (id == 1) {
/*delete your call log*/
}
可能通过 id 你可以解决你的问题。
关于java - 删除不适用于 HTC 的通话记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18591366/