"uicache"命令在越狱iPhone上做什么?



每当我安装越狱应用程序并且该应用程序的图标没有显示时,我都会使用命令。 该命令的其他用例是什么?命令背后的机制是什么?

SpringBoard("主屏幕"应用程序)保留所有应用程序图标的缓存。在 App Store 中安装或删除应用程序时,installd会执行缓存以反映这些更改和更新。通过其他方式(例如通过Cydia)安装应用程序时,installd不会以任何方式参与,因此要使应用程序在主屏幕上正确显示,必须以某种方式"手动"更新缓存。
这正是uicache的设计目的。它究竟是如何实现的,在iOS版本之间有所不同,但它主要是删除缓存文件,杀死/重新加载处理它们的服务以及迭代已安装的应用程序以构建新缓存的组合。

你可以在 saurik 的 git 存储库中查看其源代码。

最新更新