现在的位置: 首页 > 综合 > 正文

xCode无证书调试

2013年10月11日 ⁄ 综合 ⁄ 共 2143字 ⁄ 字号 评论关闭

 转载自:http://hfutxf.iteye.com/blog/1197594

 Xcode只有破解后才能免费真机调试,否则需要注册苹果的开发者计划,需要99美元一年,除非发布程序到苹果商店,否则可以先不注册,破解到真机调试。真机为越狱后的ios设备,比如ipod,iPhone,iPad。我的iPod版本是4.3.3,Xcode版本是3.2.6,mac版本是10.6.8。

第一步:创建证书

打开应用程序->实用工具->钥匙串访问.

打开菜单:钥匙串访问->证书助理->创建证书。

在打开的对话框中,名称输入:iPhone Developer,选中让我覆盖这些默认值。

然后继续,再继续,然后输入你的email,名称还是iPhone Developer。然后继续,然后再继续,再继续,这步很重要,去掉电子邮件保护的功能,选中代码签名的功能。如下图。


然后继续,再继续,主题备用名称扩展输入RFC822 名称,填入邮箱即可。然后继续,然后再继续,系统会创建该证书,并且提示创建成功,但是该证书不被信任,并且被打了叉叉,不过没有关系能用就行。

 

第二步:修改Xcode

 

   1. 关闭Xcode,打开命令行终端,运行下面的命令:

Shell代码  收藏代码
  1. cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/  
  2. dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255  
  3. printf “\x8f\x2a\x00\x00″ >> working  
  4. dd if=iPhoneOS\ Build\ System\ Support of=working bs=1 skip=127504 seek=127504  
  5. /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original  
  6.   
  7. #.original是备份,以后要用注册的证书的话,在恢复本文件即可  
  8. /bin/mv working iPhoneOS\ Build\ System\ Support  
  9. chmod a+x iPhoneOS\ Build\ System\ Support  

 

   2. 执行完后再运行下面的命令:(需要internet网络连接)

Shell代码  收藏代码
  1. mkdir /Developer/iphoneentitlements30  
  2. cd /Developer/iphoneentitlements30  
  3. curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt  
  4. mv gen_entitlements.txt gen_entitlements.py  
  5. chmod 777 gen_entitlements.py  

 

 

 

    3.执行完脚本后打开”/Developer/Platforms/iPhoneOS.platform/Info.plist”文件,这是一个xml文件,直接双击打开,点AddItem增加下面2项,左边key,右边是值,
     PROVISIONING_PROFILE_ALLOWED = NO
     PROVISIONING_PROFILE_REQUIRED = NO

    再将所有“XCiPhoneOSCodeSignContext”替换为“XCCodeSignContext”,也就是去掉中间的iPhoneOS这几个字母,然后保存退出。建议修改前,先备份一下,方便恢复。

 

   4.    打开Xcode,打开你的项目,Project>>Edit Project Setting,选择“Build”页面,Configurations和Show都选择All,找到Code Signing Identity项,删除其子项,并将“Code Signing Identity”选择为“iPhone Developer”。

    然后在Xcode的File菜单上,New File -> iOS -> Code Signing -> Entitlements,新建了一个“Entitlements.plist”点Finish,然后打开此文件,增加一个“get-task-allow”属性,Boolean类型,并且选中,然后保存。否则在真机上调试时出现“Error launching remote program: failed to get the task for process xxx"的问题。

    将越狱后的iPod接入电脑,在Xcode的Window>>Organizer中会侦测到你的iPod.查看iPod和你的Xcode识别正常后退出Organizer,选择编译环境为“4.3|Debug|xxx|xxx|armv6”,点击"Build and Run",即可在真机运行。真机一定要越狱,并且安装了AppSync。

抱歉!评论已关闭.