(编程/自动)删除iOS应用程序

我正在寻找解决scheme,如何从设备中删除所有已安装的iOS应用程序。 我正在为iOS-Security开发一个项目。 对于一个监狱破碎的设备上的不同分析的东西,有必要自动安装一大堆应用程序,执行所有testing,然后将其删除,以获得进一步应用程序的自由空间。 自动安装和testing逻辑已经完成。 我只坚持应用程序删除部分。

用户安装的iOS应用程序位于/var/mobile/Applications/ 。 每个应用程序都有自己的随机命名的目录,例如7654BE30-F438-42CE-98E0-B95264458C49/

为了certificate应用程序是否已安装,我的软件检出/private/var/mobile/Library/Caches/com.apple.mobile.installation.plist

我已经尝试删除/var/mobile/Applications/的所有应用程序的二进制文件,并且在com.apple.mobile.installation.plist有引用。 看起来iOS在每个安装过程之后都会生成一个新的com.apple.mobile.installation.plist ,因此,是否将所有条目从com.apple.mobile.installation.plist删除都没有区别。 所以如果我想安装一个已经testing过的应用程序,那么我的软件将不会识别它尚未安装,因为它仍然列在com.apple.mobile.installation.plist

我试图找出iOS存储所有关于用户安装的应用程序的信息。 将不胜感激任何帮助或暗示找出的信息。 提前致谢!

考虑我正在越狱iDevice,所以一切都是可能的;-)

以编程方式擦除整个设备

有没有办法编程恢复我的iPhone到出厂设置?

以编程方式卸载一些应用程序

如果您想卸载应用程序,则可以使用私有API“MobileInstallationUninstall”。 但是,它需要授权“com.apple.private.mobileinstall.allowedSPI”,你可以得到,因为你的设备越狱。