问题描述
我正在PowerPC Mac上进行iPhone开发.如何使代码签名正常工作,以便可以构建到iPhone?
I'm doing iPhone development on a PowerPC Mac. How do I get code signing to work properly so that I can build to my iPhone?
iPhone SDK并不正式支持PowerPC,但是有些烦躁不安,可以安装它.请参见此处.我已经在Xcode中安装并运行了SDK,并且iPhone模拟器运行正常.
The iPhone SDK doesn't officially support PowerPC, but with some fidgeting, it can be installed. See here. I've got the SDK installed and running fine in Xcode and the iPhone simulator works fine.
但是,我无法在Xcode中构建到我的iPhone上-代码签名是fubar.一些聪明的人在此处创建了解决方法.即,我使用了Tiku发布的codesign脚本以及一些更正.这帮助我取得了一些进展.该代码现在可以编译,但是在尝试部署时仍然出现0xE800003A错误.
However, I can't build to my iPhone in Xcode -- the code signing is fubar. Some clever people have created workarounds here. Namely, I used the codesign script that Tiku posted along with some of the corrections. This has helped me make some progress. The code compiles now, but I still get an 0xE800003A error when it tries to deploy.
我想我已经正确设置了所有密钥和配置文件.我的iPhone已注册开发,我已经创建了配置文件.开发门户中列出的AppID表示MagicNumber.com.website.*,在我的项目中,我将捆绑ID设置为com.website.$ {PRODUCT_NAME:identifier}.在项目设置中,产品名称为HelloWord,代码签名身份为我的开发人员证书.
I think I have all my keys and provisioning profiles set up properly. My iPhone is registered for development, I've got the provisioning profile created. The AppID listed in the dev portal says MagicNumber.com.website.* and in my project, I have the Bundle ID set as com.website.${PRODUCT_NAME:identifier}. In project settings, product name is HelloWord, and the code signing identity is my developer certificate.
iPhone的控制台日志显示:2月18日星期三14:57:55未知afcd [180]:用户移动设备具有uid 501
The console log of the iPhone says:Wed Feb 18 14:57:55 unknown afcd[180] : user mobile has uid 501
2月18日星期三14:57:55未知afcd [180]:模式为0x41e82月18日星期三14:57:55未知mobile_installation_proxy [182]:install_embedded_profile:跳过嵌入式配置文件的安装2月18日星期三14:57:55未知mobile_installation_proxy [182]:verify_executable:无法验证签名:e800800e2月18日星期三14:57:55未知mobile_installation_proxy [182]:preflight_application_install:无法验证/var/tmp/install_staging.QNk2sD/HelloWorld.app/HelloWorld2月18日星期三14:57:55未知mobile_installation_proxy [182]:install_application:无法预检应用程序安装2月18日星期三14:57:55未知mobile_installation_proxy [182]:handle_install:安装失败
Wed Feb 18 14:57:55 unknown afcd[180] : mode is 0x41e8Wed Feb 18 14:57:55 unknown mobile_installation_proxy[182] : install_embedded_profile: Skipping the installation of the embedded profileWed Feb 18 14:57:55 unknown mobile_installation_proxy[182] : verify_executable: Could not validate signature: e800800eWed Feb 18 14:57:55 unknown mobile_installation_proxy[182] : preflight_application_install: Could not verify /var/tmp/install_staging.QNk2sD/HelloWorld.app/HelloWorldWed Feb 18 14:57:55 unknown mobile_installation_proxy[182] : install_application: Could not preflight application installWed Feb 18 14:57:55 unknown mobile_installation_proxy[182] : handle_install: Installation failed
感谢您的帮助!
推荐答案
我遇到了与您相同的问题-我可以交叉编译并在iphone上安装该应用程序,但是由于安全违规,它总是会失败.
I had the same problems as you - I could cross compile and install the app on the iphone, but it would always fail with a security violation.
要解决此问题,我必须越狱手机并安装补丁的MobileInstaller(我相信Cydia应用程序现在具有名为Installous的软件包,可对MobileInstaller进行补丁.不幸的是,我认为Installous也可用于盗版应用程序).然后,在项目的Info.plist中,需要添加以下内容:
To get around it, I had to jailbreak my phone and install a patched MobileInstaller (I believe the Cydia app now has package called Installous which patches your MobileInstaller. Unfortunately, I think Installous is also used to pirate apps). Then in your project's Info.plist, you need to add the following:
<key>SignerIdentity</key>
<string>Apple iPhone OS Application Signing</string>
这将允许您的手机运行未签名的二进制文件,这是我能够从我的ppc mac开发的唯一方法.
This will allow your phone to run unsigned binaries, which is the only way I was able to develop from my ppc mac.
我仍然可以从Appstore购买应用程序,并使其运行而没有任何问题.
I'm still able to purchase apps from the appstore and have them run without any problems.
这篇关于如何在PowerPC Mac上为iPhone正确开发?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!