随着各种劫持iOS模拟器的应用程序的兴起(例如完美无缺或现在的夏洛克),我很好奇这是怎么做到的。
据我所知,有一些基于SIMBL的选项,但我不认为上面的选项会使用它。还有更多的注入(https://github.com/johnno1962/injectionforxcode),它使用XPC注入代码。
我想可能有不同的方式(例如,UI更改是如何完成的?要么是其上无瑕疵的层,要么是夏洛克中的变量更改),所以如果有人在这里指出我正确的话,那将是很好的方向。
答案 0 :(得分:1)
我还没有使用过插件,但是:
sherlock从我阅读的内容中将代码加载到模拟器运行的应用程序中。 (https://www.hackingwithswift.com/articles/131/sherlock-turbocharges-your-ios-simulator)
在网站上完美无缺,但fafaics所做的只是在模拟器窗口的顶部覆盖一个UIWindow。即使是单独的应用程序也可以做到这一点。 (https://flawlessapp.io/)
=>模拟器AFAIK仍然没有公共或私有API
=>在模拟器中定位应用程序对我来说似乎更容易
(还有其他方法可以操纵默认值或通过模拟ctctl进程进行操作)