我正在编写一种机制(在iOS应用中),通过执行fork();
检查App沙箱的完整性来检测设备是否越狱。有没有人知道尝试此次通话是否会违反App Store指南?
答案 0 :(得分:6)
fork()(和其他)不会让你被拒绝;在提交时无法复制被vanilla os拒绝的操作。 我在appstore上有应用程序使用fork()和system()调用来检查越狱环境,并且没有一个被拒绝:)
答案 1 :(得分:4)
您无法在非越狱设备上的iOS应用程序中创建新进程(您会收到诸如“不允许操作”之类的错误),但您可以使用pthread库创建新线程。
编辑:但是如果你试图检测一个设备是否越狱了,我认为这不会违反商店指南只是为了“尝试”做一个分叉,但这更像是一个法律问题而不是一个技术问题
我在应用商店指南中没有发现任何禁止使用调用某些低级API的指南。这是合乎逻辑的,因为越狱不存在,他们会禁止你做一些你无法做的事情?
我找到的最接近的事情是:
答案 2 :(得分:0)
fork(2)
可能会让你被拒绝。如果你的目的是检查设备是否越狱,你可以检查是否存在APT。
根据我的经验,尝试检查文件夹是否存在于/private/{etc,var}/apt
(APT的配置和缓存目录,Cydia需要工作但在vanilla iOS设备上不存在)的应用程序存在使用{{1}不被拒绝。