我正在考虑设计一个我想创建的iPhone应用程序.一个可能的问题是该应用程序必须以root身份运行(以访问某些网络端口).在一个典型的UNIX应用程序中,我只是让应用程序与setuid一起运行,但我想知道是否可以使用iPhone应用程序.
我在Apple的论坛上看到了这个问题,这令人沮丧:
http://discussions.apple.com/thread.jspa?threadID=1664575
我知道Apple希望限制程序可以执行的操作,但是有很多好的,合理的理由让用户以提升的权限运行程序.我不打算在这里创建一个黑客工具.
我确信我可以在一个破牢的iPhone上解决这个问题,但这不是我追求的.有没有办法在不间断的iPhone上运行具有提升权限的应用程序?
(顺便说一句,没有必要警告我NDA.)
iPhone SDK协议的第3.3.4节建议您不得在沙箱之外工作.
鉴于Apple对他们允许的应用程序有些武断,在开始开发之前,你一定要仔细检查它们.
与2.0.x相比,沙箱限制实际上增加了2.1 ; 你甚至不能再读取其他应用程序的沙箱了.所以,即使它目前是可以提升你的应用程序的权限,它很可能不会在将来的版本.