Xcode 4.5.2 + iOS 6.0免证书(iDP)开发+真机调试+生成IPA全攻略

本文详细介绍如何在iOS设备上进行免证书调试,包括创建代码签名证书、修改Xcode配置文件及工程设置等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.创建证书
创建证书的过程比较简单,打开 实用工具-钥匙串访问。然后在菜单栏里 点击 钥匙串访问-证书助理-创建证书来打开向导。第一个步骤比较重要,必须要 把名称命名为iPhone Developer,将类型设定为代码签名,将"让我覆盖这些默认值"选中。之后的步骤无需更改,一路点击“确定”和“继续”来完成这个向导就可以。


2.修改Xcode的配置文件和二进制文件
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk
sudo cp SDKSettings.plist SDKSettings.plist.orig
sudo cp SDKSettings.plist /Users/fortunafortuna/Desktop/
sudo /Applications/Xcode.app/Contents/MacOS/Xcode /Users/fortunafortuna/Desktop/SDKSettings.plist
会启动Xcode的图形界面,我们展开DefaultProperties分支,将下面的CODE_SIGNING_REQUIREDENTITLEMENTS_REQUIRED两个属性改为NO(如果通过命令打不开这个文件,就在桌面手动打开)
保存完成以后在Finder中进入/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk,替换里面的SDKSettings.plist

下面修改另外一个文件,进入目录并备份原文件
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform
sudo cp Info.plist Info.plist.orig
sudo cp Info.plist /Users/fortunafortuna/Desktop/
sudo /Applications/Xcode.app/Contents/MacOS/Xcode /Users/fortunafortuna/Desktop/Info.plist
将全部的 XCiPhoneOSCodeSignContext 修改成 XCCodeSignContext,总共有三处,分别在DefaultProperties分支下、RuntimeRequirements分支下和OverrideProperties分支下。

3.准备自定义的生成后脚本
连接互联网后执行(必须要联网)
sudo mkdir /Applications/Xcode.app/Contents/Developer/iphoneentitlements
cd /Applications/Xcode.app/Contents/Developer/iphoneentitlements
sudo curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
sudo mv gen_entitlements.txt gen_entitlements.py
sudo chmod 777 gen_entitlements.py

4.修改工程设置
(1)禁用Xcode自动的签名操作
将工程配置中所有的Code Signing选项全部设为Don’t Code Sign,如图。可能需要先点击“All”让这个选项显示出来

(2)添加自定义的生成后脚本
在Build Phases中添加一个Phase,右下角的Add Build Phase,然后单击Add Run Script,输入以下脚本
export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ] || [ "${PLATFORM_NAME}" == "ipados" ]; then
/Applications/Xcode.app/Contents/Developer/iphoneentitlements/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi


至此配置全部完成,下面就可以插上iPhone,重新选择生成目标来测试一下在线调试了!

解决方法:选中当前的xib文件,在属性栏里面进行以下操作:
在右边的 inspector 一栏将 interface builder document 下的 use  autolayout 复选框去掉就可以了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值