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

Java 如何以编程方式删除SMS日志?,java,android,Java,Android,我一直试图通过以下代码删除设备上的所有日志: contentResolver.delete(CallLog.Calls.CONTENT_URI,null,null); 但它只删除通话记录,短信记录仍然未删除。 如何删除所有日志,包括短信日志? 任何帮助都将不胜感激 getContext().getContentResolver().delete( Uri.parse("content://sms/conversations/" + threadID), null,

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

 contentResolver.delete(CallLog.Calls.CONTENT_URI,null,null);
但它只删除通话记录,短信记录仍然未删除。 如何删除所有日志,包括短信日志? 任何帮助都将不胜感激

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

试试这个

你可以用这个方法删除所有的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"/>

这些电话呼叫应用程序不一定会在相关的
内容提供者
后面显示正确的数据库状态


此应用程序正在缓存(持久/非持久)数据,并且在“真实数据”(来自内容提供商数据库)更改时不会刷新数据。

如果我正在使用您的程序,并且我已经意识到您正在篡改我的短信日志,则此应用程序的可能副本可能会对您有所帮助(我可以想象没有任何应用程序会读取我的短信)我会抓起一把旋转锄头,用它弄乱你的狗。你确定你想让一群愤怒的用户准备用私刑处死你吗?无意冒犯,这只是理论上的起草。这就是我要问的@阿苏,看看我的答案吧。再次阅读这个问题可能会帮助你们给出正确的答案!我要求的是短信日志,而不是从收件箱中删除短信。!我已经收到了一个书面解决方案,在这里提供了一些赏金>请发布您的答案。对于新的堆栈溢出用户。