roothide / Bootstrap

A full featured bootstrap for iOS 15.0-17.0 A8-A17 & M1+M2 using roothide
MIT License
1.18k stars 793 forks source link

Some applications with partially enabled tweaks injection are being treated as settings. #217

Closed invalidunit closed 7 months ago

invalidunit commented 7 months ago

In scenarios where settings should be opened (for example, installing configuration profiles, setting up app notifications, or any redirection to the settings), the apps with partially enabled tweaks injection are the ones that get opened.

The fundamental reason is that one of the items in the CFBundleURLTypes in xxx.app/Info.plist includes 'prefs'. This was a known issue during the era of trollstore 1.x. Even if trollstore has resolved the issue, using bootstrap to rebuild the icon cache can trigger the problem again.

The solution: One should directly remove the item containing 'prefs' from the Info.plist file. If modifying the Info.plist makes the application unable to open, it might be worth considering making a backup of Info.plist, and then restoring the Info.plist file after the icon cache has been rebuilt.

应该打开设置的情况(安装描述文件,配置应用通知等任何跳转打开设置)下都打开部分启用了插件注入应用。

核心原因是 xxx.app/Info.plist 的 CFBundleURLTypes 中某一个 item 包含了 prefs 这属于 trollstore 1.x 时期的已知问题,在 trollstore 已经解决问题的情况下,使用 bootstrap 的重建图标缓存将会将其再次触发。

解决方法: 应该直接在 info.plist 中移除包含 prefs 的 item,若 info.plist 的修改会导致应用无法打开,可以考虑备份 info.plist,并在重建图标缓存之后恢复 info.plist 文件。

invalidunit commented 7 months ago

This issue #130 should fall under this category.

roothider commented 7 months ago

already fixed in 1.1.1