您的位置:首页 > 移动开发 > IOS开发

【iOS学习笔记】傻瓜式图文并茂,免99刀,xcode4.6.3免证真机测试

2014-07-01 11:52 417 查看
From:http://blog.sina.com.cn/s/blog_4aacd7af0101ad7n.html

由于自己手机没有越狱,有需要真机测试,穷,舍不得99刀,就翻了各种帖子,终于搞定了免证真机测试。

1.创建证书。

如下图, 尽量就跟下图一样. 名称大小写要注意,





2.直接双击

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk 此目录下的SDKSettings.plist

提示1:如果双击后,无法进行下面操作,那么你就复制此文件到桌面,在桌面修改好后,覆盖目录下的文件,记得备份和权限问题哦。

将以下两段中的YES改为NO

1
<</code>key
>CODE_SIGNING_REQUIRED</</code>key
>
2
<</code>string
>
YES </</code>string
>
3
4
<</code>key
>ENTITLEMENTS_REQUIRED</</code>key
>
5
<</code>string
>
YES </</code>string
>




3. 双击

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/下的Info.plist

提示2:如果无法操作,同提示1所示操作。

把全部的XCiPhoneOSCodeSignContext 修改成 XCCodeSignContext,有三个。。





4. 打个二进制补丁。

cd ~/Desktop
vim script

打上下面内容.

1
#!/bin/bash
cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/PrivatePlugIns/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/ dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255 printf "xc3x26x00x00" >> working /bin/mv -n iPhoneOS\
Build\ System\ Support iPhoneOS\ Build\ System\ Support.original /bin/mv working iPhoneOS\ Build\ System\ Support chmod a+x iPhoneOS\ Build\ System\ Support
授予这个脚本执行权限并执行它

chmod 777 script
./script

正常的话应该输出(具体的数字可能有差别)

1
231+1
records
in
2
231+1
recordsout
3
115904
bytes transferred
in
0.001738
secs (66694555 bytes/sec)
提示3:这里我当时操作时,遇到了问题,因为对于VIM命令不懂,这里给展示哈具体的操作哈。

输入

cd ~/Desktop
vim script

之后,会出现




然后,键入I,进入插入模式




copy上面的代码,然后,键入ESC,键入冒号(:),输入W回车是保存,保存好后输入Q回车:退出script。下图为输入W回车后的图像。(W,Q,均为小写)




保存退出script后,在终端输入

chmod
777 script

./script
就会有结果显示了,如果出现

“No such file
or directory”这句话那

通常是由于您拷贝代码时不全或者开发环境安装错误等问题导致的。请再次检查报错的目录是否存在,检查代码与本文给出的是否严格一致,各种检查吧~如果检查无错,那么你重启电脑,再重新第4步操作,我就是这样,折腾了我好久,结果第二天重启电脑,我来试试,就成功了。

5. 准备自定义的生成后脚本

打开终端,把下面的内容一行一行的执行。

1
mkdir
/Applications/Xcode.app/Contents/Developer/iphoneentitlements
2
cd
/Applications/Xcode.app/Contents/Developer/iphoneentitlements
3
curl
-O http://www.alexwhittemore.com/iphone/gen_entitlements.txt[/code]
4
mv
gen_entitlements.txt
gen_entitlements.py
5
chmod
777
gen_entitlements.py
提示4:这里也要注意,如果在执行这段代码时遇到Permission
denied提示的话,请将相应的语句前面加上sudo以获取超级权限。

6。 将工程配置中所有的Code
Signing选项全部设为Don't Code Sign.

我这边设置为我的证书名好像也没事...





7.

添加自定义的生成后脚本
在Build
Phases中添加一个Phase,右下角的Add Build Phase,然后单击Add Run Script,输入以下脚本

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




到此OK了,

要注意两点,害的我一直不成功.

1. 要完全退出你的xcode, 再重新启动xcode.

2. 你的越狱的iphone要装AppSync.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: