构建XCode免证书开发环境
如需转载,请注明出处! WebSite: http://www.jjos.org/ 作者: 姜江 linuxemacs@gmail.com QQ: 457283 写在最前面 如果你和我一样,是一名爱好iOS开发的开发者,并且又舍不得花费99美金去购买一个合法的开发License,这篇博客则非常适合你。如果,您是一位已经获得Apple开发者证书的开发者,则可以完全无视该篇Blog。 开篇 在没有证书的情况下,开发iOS应用程序只能在功能有限的模拟器环境中运行你的应用程序(x86环境)。对于那些与硬件平台关系不大的iOS应用程序开发来说,模拟器环境可以模拟大多数功能,但是一旦你的应用需要涉及实际的硬件设备(比如:摄像头,感应器等),则模拟器就无法满足您的开发需求。拜股沟大神所赐,网路上已经早已有开发者用自签名证书的方式,绕开XCode的证书检查,可以将XCode编译的应用程序部署到实际的iOS设备上进行测试和调试。 生成自签名开发证书 1. 启动证书链管理工具(应用程序->实用工具->钥匙串访问)创建证书 设置证书名称设置为iPhone Developer(该名称需要和XCode编译签名时使用的证书名称一致,下文会提到),身份类型选择自签名根证书,证书类型选择S/MIME (电子邮件),并且在覆盖这些默认值选项上打勾。 选择继续制作自签名证书 设置证书有效期365天(时长不要超过365天) 输入用户信息 选择密钥大小和算法(2048位和采用RSA算法) 设置密钥扩展功能(选择签名功能和代码签名功能) 禁止基本约束扩展 设置主题设备用名称扩展,RFC822输入邮箱即可 设置钥匙串类型为登陆类型 至此,自签名证书创建完毕 Hacking XCode 1. 绕开XCode证书检测(以下代码在终端执行) #!/bin/bash cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/ dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255 printf “\x8f\x2a\x00\x00″ >> working dd if=iPhoneOS\ Build\ System\ Support of=working [...]