xCode 4.X 免证书真机发布及调试

由于没有购买苹果的开发者证书,所以目前大多数开发环境都是使用以下的方式实现开发与真机测试(本文部分摘自网络)

使用环境:越狱过的iPhone 机器 Mac OS 10.6.8 xCode 4.0.1 及Xcode4.0.2

 

操作步骤过程:

(一)制作证书

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

2、单击:"钥匙串访问"选择  "证书" 再选择"创建证书"过程如下图:

   

3、证书名称必须填写为:"iPhone Developer" ,(不能随便填写)然后点击"创建"。(如图)

   

   

   

   

   

   

   

   

   

 (二)修改xcode配置文件

注意:由于这些配置文件是系统文件,修改系统文件需要管理员权限才可以进行操作,所以保存的时候不能直接保存,会遇到系统提示"你没有修改此文件得权限",但可以保存一个副本。可以先修改这个副本,然后再复制到原先的目录,系统会提示你是否修改替换,选择"替换",这时候是需要管理员密码才可以覆盖原来的文件,输入密码后,修改完成。

   

1.修改SDKsettings.plist文件。

找到 "  /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk "下得  SDKSettings.plist  文件,修改"Default Properties "项下面得 "CODE_SIGNING_REQUIRED "得值为:NO。

   

2.修改"/Developer/Platforms/iPhoneOS.platform/Info.plist"文件(用文本编辑器或者Xcode打开):

增加两项:

PROVISIONING_PROFILE_ALLOWED = NO

PROVISIONING_PROFILE_REQUIRED = NO

效果如下图所示:

然后将所有"XCiPhoneOSCodeSignContext"替换为"XCCodeSignContext"。

   

3.修改好配置文件后重启xcode,修改项目的属性

1)点击  项目图标,找到"Build Settings"  找到  "Code Sign Identity"  

按照下面得方式设置一下就可以 了。

2) 设置工程属性:

   

   

3)然后点击  "Run" 我们会看到工程正在编译,然后弹出如图提示(两次):我们选择 "总是允许"

   

4)在项目中添加一个Entitlement.plist文件,设置允许调试。

注:若不操作该步可能连接真机调试的时候还会出现一个错误:Error launching remote program: failed to get the task for process xxx

   

操作步骤:在Xcode4.X  中这样做:

a.在工程中按照这个执行创建一个名为:Entitlement.plist 文件In the File Menu, select New File -> iPhone OS -> Code Signing -> Entitlements. Name the file "Entitlements.plist" and click 'Finish'. 

    b.打开  这个  "Entitlement.plist"文件,将 "Can be debugged"属性值改为 "YES"。

   

c.将Code Signing Entitlements 那项得值改为刚刚新建得"Entitlements.plist".

4。提示选择完后:可以看到

我们就可以看到 程序可以出现在 你得iphone上了。

当你运行程序时,可以通过 organizer 看到你得iphone 运行时打印出来得Log。

posted @ 2011-10-26 13:54 小草 阅读(1470) 评论(8) 编辑 收藏

 回复 引用 查看   
#1楼2011-10-26 14:03 | 坤坤      
要是开发iOS应用,还是倡议申请苹果开发者。
 回复 引用 查看   
#2楼2011-10-26 16:00 | Jo.Zhou      
Good!
 回复 引用 查看   
#3楼2011-11-02 15:44 | WorkTimer      
@坤坤
申请苹果开发者 一年需要 99美刀

 回复 引用 查看   
#4楼2011-11-03 15:10 | 张智清      
学习的话,先免证书调试吧。
 回复 引用 查看   
#5楼2011-12-05 11:52 | FlyBin      
试了5.0的sdk还是无法发现设备,还是要求输入开发者啊
无语ing

 回复 引用 查看   
#6楼[楼主]2011-12-09 08:23 | 小草      
@FlyBin
可以直接忽略的,只要点一下Use for Dev 即可,有部分机子无法连接我也没有搞明白,目前QA拿过来的测试机我就没有办法搞清楚为什么连接不上。

 回复 引用 查看   
#7楼2011-12-13 16:29 | FlyBin      
@小草
后面按一个破解教程,修改后,注意要编译目标的选择。

 回复 引用 查看   
#8楼2012-01-23 12:14 | lomo5      
Xcode4.2,mac os 10.7,iphone 4s4适用吗?