【发布时间】:2012-08-09 15:04:55
【问题描述】:
我正在开发与 Cydia 一起分发的应用程序。因此它安装在 /Applications 文件夹中,而不是像通常的 AppStore 应用程序那样安装在 /var/mobile/Applications/ 中。而且我认为安装会给我带来一些巨大的问题。 起初,用著名的 Apple 的 KeychainItemWrapper 读写钥匙串根本不起作用。 另外,我的 settings.bundle 也不起作用。应用设置不显示在 Settings.app 中。
当我在 Simulator 中测试应用程序,甚至将其从 Xcode 直接部署到设备(部署到 /var/mobile/Applications/)时,一切都像魅力一样。
我尝试将已安装的 .app 移动到 var/mobile/Applications/XXXXXX/myapp.app 并让 mobile:mobile 成为它的所有者。它没有帮助。
任何解决方案可以使这项工作?
【问题讨论】:
-
您是否对应用程序进行代码设计?钥匙串 api 依赖于代码签名
-
是的,我签署了应用程序,但没有使用苹果提供的证书。我自己生成的。如果应用没有经过代码签名,它甚至无法在我的设备上启动。
-
我发现,编码也需要设置权利。所以所有的问题都解决了。谢谢 2 所有。
-
@albicelestial 您是如何在您的 JB 应用程序上获得钥匙串访问权限的,因为我遇到了同样的问题。
-
克里斯,您必须添加权利(选择您的项目,在摘要中向下滚动到底部并单击“权利”复选框,然后添加钥匙串访问组(如果默认情况下未添加))。在此操作之后 KeychainItemWrapper 工作正常。
标签: iphone objective-c ios jailbreak cydia