如何以编程方式删除SMS日志?

时间:2013-09-16 12:15:25

标签: java android

我一直试图通过以下代码删除设备上的所有日志:

 contentResolver.delete(CallLog.Calls.CONTENT_URI,null,null);

但它只会删除通话记录,而短信日志仍然会被取消删除。 如何删除所有日志,包括短信日志? 任何帮助将不胜感激.. !!

3 个答案:

答案 0 :(得分:0)

getContext().getContentResolver().delete(
    Uri.parse("content://sms/conversations/" + threadID), 
    null, 
    null);

试试这个

答案 1 :(得分:0)

您可以使用这种方式删除所有smslog

getContentResolver().delete(Uri.parse("content://sms/"),null,null);

从您的smslog中删除短信需要使用清单中声明的​​权限

 <uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.WRITE_SMS"/>

答案 2 :(得分:0)

这些电话呼叫应用程序不一定在相关ContentProvider后面显示正确的数据库状态。

这个应用程序是缓存(持久性/非持久性)数据,当“真实数据”(来自内容提供商数据库)发生变化时,不会刷新它。