logo头像
Snippet 博客主题

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

本文于2108天之前发表,文中内容可能已经过时。

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

【2012年3月15日更新】:目前我使用的是Xcode4.3.1 mac os 10.7.3

最简单的办法就是让xcode不检查签名,直接编译发布。

1、 修改SDKSettings.plist文件:
进入SDK目录:xcode4.3版本以前是:/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3(可能是5.0/4.2等).sdk/
xcode4.3及以上版本的目录是:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk

打开该目录下的SDKSettings.plist文件,把其中所有的包含REQUIRED的项的值改成NO(在实际就是有2项值需要修改:CODE_SIGNING_REQUIRED和ENTITLEMENTS_REQUIRED)。

2、工程的配置修改:
对每个工程进行修改,把所有的Code Signing Identity 全部改为 Don’t Code Sign

 

 

旧的方法可以参考:

 

使用环境:越狱过的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。

上一篇