随笔-60  评论-280  文章-0  trackbacks-1

iPhone 真机测试(调试)教程-伪造证书-免iPhone developer付款

---图片: 
iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q
图片: 
iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q

最近小弟開始在研究 iPhone 的開發,無奈找到的資料都是舊的,也不知道怎麼放到 iPhone 上,應該很多人都跟我有同樣的困擾吧!經過幾天的研究總算寫出第一個 HelloWorld,而且可以不用付99元美金就可以放到實機上執行! 今天先和大家分享怎麼放到手機上,以及基本的 Xcode 使用: 
我的環境如下: 
IBMX60+iDeneb 10.5.5 
iPhone 港版16G+FW2.2+越獄 
iPhone SDK 2.2 final 
MobileInstallation 已替換(這很重要,不然沒法放到 IP 上,可以參考 weiphone 的這個帖子:http://www.weiphone.com/thread-206698-1-1.html
注意: SDK 版本最好和 IP 版本一致! 

好啦,同學們,課程開始啦! 

1. 產生證書 
由於 XCode 後面的版本都要求應用程式必須經過簽署,也因此你必須要 
多花99美元加入 Developer Program (真是黑呀),反正我又不放到 App Store 賣錢,乾脆自己簽個證書來用不就好了 

打開 Key Access 這個工具程式(在應用程式->工具程式內),並建立一個 "iPhone Developer" 名稱的證書(這個名稱不要改,否則你得在專案內改變) 


iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q


iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q




iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



類型選擇"編碼簽名" 


iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



輸入憑證資訊 


iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



最後選擇存放在"登入"內(不是 "系统",因为后面的xCode的破解是需要 “登陆” 才行) 

iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



這樣就大功告成了,你已經省下$99了! 

2. 打開 XCode 建立 View Based Application 


iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



2. 專案建立好了後,打開 Project Setting,並在 User-Defined Settings 輸入: 
PROVISIONING_PROFILE_ALLOWED = NO 
PROVISIONING_PROFILE_REQUIRED = NO 


iPhone 真机测试教程-伪造证书,使用证书 - Hi,MR.Q - HI,MR.Q



3. 打開 Info.plist,這個檔案主要存放應用程式的相關描述,按右鍵 Add Row,新增 SignerIdentity = "Apple iPhone OS Application Signing" (要一樣的,亂輸好像不行)

接着下来就破解 xCode

  • 关闭Xcode,打开你的命令行终端,复制粘贴下面的代码:

#!/bin/bash

cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/

dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255

printf “\x8f\x2a\x00\x00″ >> working

dd if=iPhoneOS\ Build\ System\ Support of=working bs=1 skip=127504 seek=127504

/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

 

  • 执行完后再复制粘贴下面的代码到命令行终端:(需要internet网络连接)

mkdir /Developer/iphoneentitlements30

cd /Developer/iphoneentitlements30

curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt

mv gen_entitlements.txt gen_entitlements.py

chmod 777 gen_entitlements.py

 

  • 执行完脚本后修改”/Developer/Platforms/iPhoneOS.platform/Info.plist”文件,做如下修改:

新增如下两项:

PROVISIONING_PROFILE_ALLOWED = NO

PROVISIONING_PROFILE_REQUIRED = NO

 

  • 再用文本编辑器打开”/Developer/Platforms/iPhoneOS.platform/Info.plist”文件,将所有“XCiPhoneOSCodeSignContext”替换为“XCCodeSignContext”,(非常重要,不进行此步骤会导致打开项目文件Xcode会崩溃报错退出)保存退出。

 

  • 打开Xcode,打开你的项目,Project>>Edit Project Setting,选择“Build”页面,Configurations和Show都选择All,找到Code Signing Identity项,删除其子项,并将“Code Signing Identity”赋值为“iPhone Developer”(其实是个选项)。

 

  • 然后找到你项目的xxx-Info.plist文件,添加“SignerIdentity”项,其值为“Apple iPhone OS Application Signing”.保存。

 

  • 将iPhone接入电脑,在Xcode的Window>>Organizer中会侦测到你的iPhone.查看iPhone和你的 Xcode识别正常后退出Organizer,选择编译环境为“iPhone Device-3.1.2|Release”,点击"Build and Go",期间会出现让我们选择签名证书,点选“允许”后,祈祷你的iPhone屏幕亮起吧。

 

  • 你的程序会自动下载到你的iPhone中。点触运行无任何错误提示。

 

PS:

有几个小问题,说一下,以免后来者走弯路。

1. 如果你把Xcode不是装在系统盘,比如我是装在另外一个分区,则相应的命令为:cd /Volumes/分区卷标/你装Xcode的文件夹/Platforms/iPhoneOS.platform/Developer/Library /Xcode/Plug-ins/iPhoneOS\Build\ System\ Support.xcplugin/Contents/MacOS/ 其他好像基本不用改,不过我是自己在终端里面一条条敲,不是复制粘贴,直接用tab补全也挺快

2.如果你之前用过别的方法,并新建了证书,一定要在这次操作前把以前的证书删掉,(在/应用程序/key access或者中文叫钥匙串访问),而且最好是注销后再删,不然可能删不了,我就是因为没删,后面出了好多问。

标签: apple
posted on 2011-05-30 17:51 刘誉儿 阅读(882) 评论(0) 编辑 收藏
昵称:刘誉儿
园龄:6年6个月
粉丝:1
关注:0
<2011年5月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

搜索

 
 

常用链接

我的标签

随笔档案

文章分类

相册

最新评论

阅读排行榜

评论排行榜

推荐排行榜