【发布时间】:2013-04-03 02:47:20
【问题描述】:
我正在为越狱的 iOS 设备开发应用程序。
我想从用户的收件箱中删除一条消息 - 我删除了 SMS.db 上的消息(在“消息”表中),但是当我转到收件箱时,它仍然存在“空白”内容和发件人的电话号码。
在 iOS 5 上,我使用 CKSMSRecordDelete 完美删除了它,但在 iOS 6 上,ChatKit.framework 不再起作用了。
【问题讨论】:
我正在为越狱的 iOS 设备开发应用程序。
我想从用户的收件箱中删除一条消息 - 我删除了 SMS.db 上的消息(在“消息”表中),但是当我转到收件箱时,它仍然存在“空白”内容和发件人的电话号码。
在 iOS 5 上,我使用 CKSMSRecordDelete 完美删除了它,但在 iOS 6 上,ChatKit.framework 不再起作用了。
【问题讨论】:
在这里查看我的答案Block sms on ios6 要从 SMS.db 中删除行,您需要使用 IMDPersistence.framework
如果您想手动执行此操作,您还应该从“聊天”和“处理”表中删除行。但我认为这不会奏效。消息将从数据库中删除,但仍会显示在消息应用程序中。您可以尝试杀死“com.apple.imagent”守护进程。它处理 iOS 6 中的消息,并可能将消息保留在内存中。它会自动重启并重新加载 SMS.db 内容。
【讨论】:
尝试一些其他软件来擦除短信可能有效。 根据一些解释,您删除的某些数据仍然存在于 iPhone 存储中,它们实际上并没有消失。一些专业的数据恢复软件可以通过某种方式检测它们。因此,如果您想永久擦除数据而不恢复,请在互联网上查找一些教程。比如How to erase text messages permanently可能适合你。
【讨论】: