欢迎转载,请务必注明出处:本文转载自 岳生博客 http://zhyuesheng.blog.163.com
参考了国内外多篇文章,本文所述攻略在以下开发环境下验证通过。
开发环境:Mac OS X Lion 10.7.3 + Xcode 4.3,iPad2新升级iOS 5.0.1(9A405)后安装Cydia和Appsync for iOS 5.0+,下文提供最新的链接和安装方案。
不想花费99美金购买开发者证书iDP,却能
将程序放到iPad 和 iPhone上调试,并最终发布IPA用于分享,需要以下几个步骤:
一、iPad2越狱
二、在Mac上创建自签名证书
三、修改Xcode的配置文件
四、修改工程配置
五、联机调试程序
一、iPad 2升级iOS 5.0.1,越狱并通过Cydia安装AppSync
升级iOS5.0.1,就是要点击iTunes中你的设备主页面上的版本-更新,请注意升级前要右键点击左侧的设备并点选“备份”。这个过程我用了四十分钟。 请注意,如果升级iOS5.0.1,xCode4.2及以下版本的Orgnizer就会提示此设备不支持联机开发,请升级为xCode的最新版本。
不注意以下细节,越狱过程会折腾死人的。
第一步下载absinthe mac 0.4 for Mac(到国外网站最好,http://www.ijailbreak.com/how-to/how-to-jailbreak-ipad-2-with-absinthe-0-1-2-2-mac-os-x/ 可用), 连接iPad2并在Mac上运行absinthe。
第二步,如果iPad有开机密码,务必去掉。如果iPad曾经执行过“恢复” 而且在下面的越狱步骤中怎么也不能将absinthe 变成 Cydia图标,那么就需要进行这样一个可怕的过程:
按shift同时点iTunes中的”恢复“(请注意做好备份),在iPad执行恢复并重新启动后选择”恢复成为全新设备“。如果VPN以前使用过设置过,那么在通用-网络 中应该去掉全部VPN设置。第三步,Mac上的absinthe会停在 almost done 的状态,后面只需要在iPad上操作。等待到了这一步,iPad会重启并出现一个丑陋的绿色absinthe 图标,双击它,耐心等待直到出现一个绿色的大按钮”Jailbreak“, 点击它,然后转到 设置-VPN 上点击连接。这一步的理想结果是absinthe 图标消失,出现一个棕色的Cydia,如果顺利,恭喜您,您的人品很好。然而大多数人会遇到各种各样的问题,最典型的是:点击”Jailbreak"后提示“Url不能打开”; 点击 VPN后提示“VPN设置错误”。这时就要回到前面的第二步。
第四步,安装Appsync,在Cydia主界面的下面“软件源”中,选编辑-添加,输入Hackulo.us,安装完成后,在Hackulo.us的子界面选择AppSync for 5.0+,安装完成后在Cydia的“已安装”中确认一下。
iPad2上的所有工作到此完毕。
二、在Mac上创建自签名证书
打开实用工具-钥匙串访问。然后在屏幕最上面的菜单栏里点击钥匙串访问-证书助理-创建证书来打开向导。必须要把名称命名为iPhone Developer,将类型设定为代码签
名,将"让我覆盖这些默认值"选中。之后的步骤无需更改,一路点击“确定”和“继续”来完成这个向导就可以。
![Xcode 4.1免证书(iDP)开发+真机调试+生成IPA全攻略 - 月下独酌 - 锦瑟华年](http://img.ph.126.net/jAeRPNeRgkVMEhzbZMhIHA==/1295629317816035869.png)
三、修改Xcode的配置文件
首先按Command+Q将xCode关闭。
(1)修改配置文件
sudo cp SDKSettings.plist SDKSettings.plist.orig
进行编辑
sudo vim SDKSettings.plist
此时如果遇到 ”已存在.swap文件“提示,向下走光标(按键盘上的向下箭头),提示文字的最下面有一个选项是(D)删除,原因是以前强制退出留下的临时文件。输入D回车就好。
此时进入vim编辑器界面,点“i”键进行编辑,将以下两段中的YES改为NO
<key>CODE_SIGNING_REQUIRED</key>
<string>YES</string>
和
<key>ENTITLEMENTS_REQUIRED</key>
<string>YES</string>
按Esc键并输入 ":wq"存盘退出,如果不存盘使用”:q!“
下面修改另外一个文件
进入目录并备份原文件
cd
/Applications/Xcode.app/Contents/
Developer/Platforms/iPhoneOS.platform/
sudo cp Info.plist Info.plist.orig
5. 连接iPad到Mac机上,如果是第一次使用该设备调试,在Organizer中将设备切换为开发模式。
进行编辑
sudo vi Info.plist
输入”/
XCiPhoneOSCodeSignContext“,回车。这是寻找命令。退出编辑状态,按”n“键是寻找下一个。
按“i”键进入编辑状态,将全部的
XCiPhoneOSCodeSignContext
修改成
XCCodeSignContext
,共3处。每次找到都按Esc键退出编辑,寻找下一个。
最后退出编辑状态,输入”:wq",保存文件并退出。
(2)二进制补丁(我在xCode4.2下运行过,这一步和下一步都通过了,然后xCode 4.3就不成了。xCode4.3的二进制补丁和自定义的生成后脚本都没做,实践证明不需要做这两步,直接转到xCode工程设置就对了。我在xCode4.2上做过一遍,然后装了xCode4.3,不知道是否会有影响?希望在xCode4.3能一次全新设置就通过。有网友遇到这种情况请说明一下呵)
3.准备自定义的生成后脚本(不需要)
4.修改工程设置
特别注意:本阶段之前的修改配置文件、准备脚本等,只需要做一次。但本阶段的操作,对每个需要真机调试的工程都要做一遍。
这个步骤的主要作用是支持真机调试,
(1)禁用Xcode自动的签名操作
将工程配置中所有的Code Signing选项全部设为Don't Code Sign,如图。可能需要先点击“All”让这个选项显示出来
![Xcode 4.1免证书(iDP)开发+真机调试+生成IPA全攻略 - 月下独酌 - 锦瑟华年](http://img.ph.126.net/COoAQeLE26iWVlMtNEei5A==/2529052665762129796.png)
(2)添加自定义的生成后脚本
不要参考网上说的这一步,做这一步反倒会出错。
建立一个工程或打开一个工程,点击xCode 左上角的RUN就可以真机运行程序了。现象是iPad上出现一个新图标,就是你正在用的工程,双击运行。生成IPA文件可以参考网上的小Trick.
是不是很爽啊?
遇到什么问题,如果有空会在后面回答,不过最近手边的事太多,遇到急切问题还是建议您到网上寻找答案。
晚饭去了,庆祝一下。