XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)[转]
目前在XCode上开发的iOS程序只能在模拟器Simulator中运行,如果要放到真机上测试,需要苹果官方认证的开发者账号,购买开发者证书iDP,99美金一年啊!!!
作为刚开始学习iOS编程的菜鸟,这么大手笔花钱实在是肉疼。。。经过一番折腾,借鉴各种大神的帖子,终于成功在真机上编译运行成功!免费的哦!
这里将方法与大家分享。
我的运行环境是:【电脑】XCode6.0.1 + OS X 10.9.5 【真机iPod Touch】iOS6.1
准备工作:
1. 首先,你要有一个已经越狱的iPhone/iPod/iPad,越狱方法此处不提供。
2. 在用来测试的真机Cydia中添加源:http://apt.weiphone.com,下载适合真机系统版本的AppSync。
3. 在电脑上创建一个证书,用于为生成的程序签名。
创建证书
创建证书的过程比较简单,在电脑上打开“其他-钥匙串访问”。然后在菜单栏里点击“钥匙串访问-证书助理-创建证书...”来打开向导。注意这里的三个地方,必须要把名称命名为iPhone Developer,将类型设定为代码签名,将”让我覆盖这些默认值”选中。之后的步骤什么都不用改,一路点击“确定”和“继续”,最后完成这个向导就可以了。

4. 如果Xcode在运行状态,请先Command+Q将其完全关闭。然后打开“其他-终端”,我们需要用到一些UNIX命令,可能看起来会比较繁琐,但是相信我,这可是在每年节省99美金啊!
① 进入iPhone SDK目录,指令如下:
1 cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/
备注:不同版本的Xcode最后的版本号不同。在Xcode 6.0中是iPhoneOS8.0.sdk,未来版本可能版本高一些,早期版本的就低一些。请根据实际情况自己改动。(如果实在不知道自己的版本号,可以用“ls”指令查看所有文件。)
② 备份原文件,如果电脑设有密码,系统会提示你输入密码(输入后不会显示出来,敲回车即可)
1 sudo cp SDKSettings.plist SDKSettings.plist.orig
③ 编辑配置文件SDKSettings.plist
为了方便修改,我们可以直接用Xcode打开这个文件。首先要打开这个文件所在目录:
1 open .
在弹出的Finder窗口中双击SDKSettings.plist,会启动Xcode的图形界面,展开DefaultProperties分支,将下面的ENTITLEMENTS_REQUIRED和CODE_SIGNING_REQUIRED两个属性改为NO。
备注:这里可能会遇到系统提示【“SDKSettings.plist” is locked for editing......】,这是因为文件读写的权限问题,解决办法如下:
首先,修改文件夹权限,此时我们所在目录是iPhoneOS8.0.sdk,如果输入指令“cd ..”返回上级目录,“ls -al”查看所有文件,会发现系统显示iPhoneOS8.0.sdk -> iPhoneOS.sdk,这表示iPhoneOS8.0.sdk是指向iPhoneOS.sdk的快捷方式,所以我们要修改的真正文件夹是iPhoneOS.sdk,指令如下:
1 sudo chmod -R 777 iPhoneOS.sdk
然后,修改文件夹内所有文件的读写权限:
1 sudo chmod 777 *
现在双击打开SDKSettings.plist,你会发现,刚才不能修改的属性可以修改了!
④ 编辑另外一个配置文件Info.plist
1 cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform
2 sudo cp Info.plist Info.plist.orig
3 open .
在弹出的Finder窗口中双击打开Info.plist。分别在DefaultProperties分支下、RuntimeRequirements分支下和OverrideProperties分支下,共有3处,将全部的XCiPhoneOSCodeSignContext修改成XCCodeSignContext。
备注:同第③步,可能会遇到权限问题,修改Platforms文件夹权限和该文件夹内所有文件的权限即可,步骤同上。
5. 准备自定义的生成后脚本(此步骤需在联网状态下进行)
1 sudo mkdir /Applications/Xcode.app/Contents/Developer/iphoneentitlements
2 cd /Applications/Xcode.app/Contents/Developer/iphoneentitlements
3 sudo curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
4 sudo mv gen_entitlements.txt gen_entitlements.py
5 sudo chmod 777 gen_entitlements.py
6. 修改工程设置
备注:本阶段之前的修改配置文件、准备脚本等,只需要做一次。但本阶段的操作,对每个需要真机调试的工程都要做一遍。
① 禁用Xcode自动的签名操作
将工程配置“Build Settings”中所有的Code Signing选项全部设为Don’t Code Sign,如图。

② 添加自定义的生成后脚本
在Build Phases中,点击左上角的”+“号,添加一个”New Run Script Phase“,输入以下脚本:

1 export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
2 if [ "${PLATFORM_NAME}" == "iphoneos" ] || [ "${PLATFORM_NAME}" == "ipados" ]; then
3 /Applications/Xcode.app/Contents/Developer/iphoneentitlements/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
4 codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
5 fi

至此配置全部完成!!!连上你的iPhone/iPod/iPad,编译运行,看见真机屏幕上程序跑起来的时候,99美金就省下了!!!
在此感谢大神贴http://kuangqi.me/ios/ios-development-without-idp/,提供的Xcode 5 + iOS 7免证书(iDP)真机调试与生成IPA全攻略。
欢迎转载,请备注原始连接http://www.cnblogs.com/liuliuliu/p/4030524.html ,并注明转载。
作者bibibi_liuliu,联系方式395985239@qq.com
XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)[转]的更多相关文章
- iOS开发之 XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)
		参考:http://mobile.51cto.com/iphone-455500.htm XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效) 前提:设备已经越狱 目前在XCode上开发 ... 
- XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)
		目前在XCode上开发的iOS程序只能在模拟器Simulator中运行,如果要放到真机上测试,需要苹果官方认证的开发者账号,购买开发者证书iDP,99美金一年啊!!! 作为刚开始学习iOS编程的菜鸟, ... 
- 关于IOS免证书真机安装的过程和问题
		由于本人是边工作边转的IOS,所以一直都没怎么使用过免证书安装过程,通常都是公司申请的99美元的账号直接开发.但是前两天有个朋友需要在展会上用的Ipad上安装内网应用,申请一个苹果账号还要审核前后加起 ... 
- iosxcode7以后免证书真机测试方法如下
		步骤比较简单,我就简单总结一下. 1. 进入xcode,菜单栏选择xcode –> preferences (快捷键 command + ,)在Accounts选项卡添加自己的Apple ID ... 
- 升级到Xcode6.2后 免证书真机调试出错的问题
		我的本来是Xcode6.1 可以正常免证书真机调试,升级到Xcode6.2以后,真机调试就报错,然后就又按照这篇文章http://www.cnblogs.com/liuliuliu/p/4030524 ... 
- XE6 /XE8 & IOS开发之免证书真机调试三步走,生成iPA文件并安装到其它苹果设备上
		XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相) XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相) XE6 &a ... 
- Xcode5.1.1+ios 7.1.2 免证书真机调试
		Xcode假设不破解.无法真机调试, 也无法编译真机Release文件.仅仅有付费开通Apple开发人员账号,才干申请真机调试.而Xcode进行破解后,结合越狱的iPhone或iPad, 就可以免官方 ... 
- 【原】xcode5&IOS7及以下版本免证书真机调试记录
		搞了有一段IOS开发了,之前一直在企业做,近阶段主要在公司做C++服务端开发,打算在空闲实现搞搞个人开发,为自己赚钱,IDP还没申请下来,所以先用此方法在越狱设备上先做一下app的免证书真机调试,先记 ... 
- 【官方方法】xcode7免证书真机调试
		[官方方法]xcode7免证书真机调试 步骤比较简单,我就简单总结一下. 1. 进入xcode,菜单栏选择xcode –> preferences (快捷键 command + ,)在Accou ... 
随机推荐
- Ios8代码关闭输入预测问题
			自IOS8出来了输入预测问题后,有些问题也就来了比如textfield中输入邮箱的话,就会有很多空格无法去掉,当时我一直在找有没有提供什么方法可以关闭:后面有这样的一个属性可以解决输入邮箱没有空格问题 ... 
- M2事后分析报告
			设想和目标 1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 这次M2预想的就是解决3个主要问题,1:增加查询自己购买或者发布记录的功能,2:优化 所有的网络连接 ... 
- 正确使用ng-if和ng-show
			在使用bootstrap中,我们会经常用到按钮组,也就是btn-group,如果仔细观察的话,会发现一个按钮组的第一个和最后一个按钮分别是有圆角的,如下图: 但是中间的按钮是没有圆角的,这样显得比较美 ... 
- 输入事件驱动---evdev_handler的大致实现流程(修整版)
			一.input输入子系统框架 下 图是input输入子系统框架,输入子系统由输入子系统核心层(input core),驱动层和事件处理层(Event Handler)三部分组成.一个输入事件,比如滑动 ... 
- Baltic2008联合内阁
			Description N个政党要组成一个联合内阁,每个党都有自己的席位数. 现在希望你找出一种方案,你选中的党的席位数要大于总数的一半,并且联合内阁的席位数越多越好. 对于一个联合内阁,如 ... 
- MySQL数据库常用命令
			1.连接mysql数据库:mysql -u用户名 -p密码; 2.创建数据库:create database 数据库名称; 3.删除数据库:drop database 数据库名称; 4.使用数据库:u ... 
- 卸载mysql
			如果你的电脑里装过MySQL,想再重新安装MySQL的时候可能就会因为前一版本卸载不彻底而出现错误.最常见的就是安装好后设置参数的最后一步验证时,会在Execute configurattion步骤中 ... 
- c#数据绑定(5)--LINQ
			嶽永鹏/文 本实例以MS AdventureWorks2008Entities数据库为基础,演示了LINQ TO ENTITY.LINQ TO ENTITYSQL和LINQ TO ENTITYCLIE ... 
- application.xml dubbo报错解决方案
- 基于bootstrap的后台二级垂直菜单[转]
			最近做一个后台的管理项目,用到了Twitter推出的bootstrap前端开发工具包,是一个基于css3/html5的框架.花周末时间,写了一个非常简单后台的菜单.本着开源的精神,现在把它分享出来(呵 ... 
