IOS-iphone真机免证书调试

准备工作:iphone需要越狱。

一. 制作假证书

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


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


 只能创建一个iPhone Developer,如有多个,请全删除后再创建。

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


有效期填数不要超过365天。 (如图)



邮件就随便写一个落



 












二 修改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"。


此步的执行需要联网,打开终端执行以下命令行。

注意:该步骤的作用是在Xcode的目录下生成gen_entitlements.py文件,Xcode目录有保护写的权限,有的时候生成不了目录和文件,如果生成不了的话,请大家再别的目录生成文件,再复制到Xcode的相应目录下,命令行的路径需要大家看得懂修改下。

mkdir/Applications/Xcode.app/Contents/Developer/iphoneentitlements

cd/Applications/Xcode.app/Contents/Developer/iphoneentitlements

curl -Ohttp://www.alexwhittemore.com/iphone/gen_entitlements.txt

mv gen_entitlements.txtgen_entitlements.py

chmod 777 gen_entitlements.py

      mac机连接iPhone后,用Xcode打开项目,模拟器选择连接的iPhone。点击 项目图标,找到Build Settings” 找到 Code Sign Identity” ,都设置为不用证书签名。 按照下面得方式设置一下就可以了。


添加自定义的生成后脚本,在Build Phases中添加一个Phase,右下角的Add Build Phase,然后单击Add Run Script(以后每次你要真机调试都要这个步骤),输入以下脚本:

(对于Xcode 4.1/4.2)
export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ] || [ "${PLATFORM_NAME}" == "ipados" ]; then
/Developer/iphoneentitlements401/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

(对于Xcode 4.3/4.4/4.5)
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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值