參考資料
iOS越獄開發環境搭建 theos
http://www.devdiv.com/home.php?mod=space&uid=54&do=blog&id=7596
http://blog.csdn.net/jimmy54/article/details/7453298
用iOSOpenDev在Xcode裏配置越獄開發環境
這段時間公司搞越獄開發,摸索很久,發現有個好東西就是IOSOpenDev,給越獄開發的人員帶來很大的方便。
1:安裝 mac ports
我之前電腦沒設密碼安裝不成功,後面設密碼就可以正常安裝,因爲安裝過程中會提示你輸入密碼
參考我轉載的文章
Mac中MacPorts安裝和使用
2:安裝DPKG
在你電腦終端裏輸入命令“sudo port -f install dpkg”,在我本本上安裝很快,但在一體機上安裝很久,這個主要是用來打包成.deb文件用了。安裝後最好重啓下(官方是說要重啓了)
3:安裝theos
Theos是一個基於Make的編譯環境,我們正是用它來編譯生成deb文件的。
從該網站下載https://github.com/DHowett/theos,然後解壓到你的保存目錄下。
配置環境變量 export THEOS = /opt/theos 參考第5步的配置變量方法
4: 下載安裝IOSOpenDev
這中間可能會安裝失敗,可以參考https://github.com/kokoabim/iOSOpenDev/wiki/Troubleshoot自己查找原因
5:還不能正常編譯,你需要動態編譯環境才能正常編譯你的工程
可以參考這篇文章 https://github.com/kokoabim/iOSOpenDev/wiki/Setup-Explained
~/.bash_profile
,
~/.bash_login
or ~/.profile
. 這3個文件你在你電腦中看是否能找到,我是找到~/.bash_profile
這個文件,然後設置下面的環境變量
export iOSOpenDevPath=/opt/iOSOpenDev
export iOSOpenDevDevice=
Intentionally a blank value. The user needs to manually add the value of the host name (e.g. MyiPhone.local) or IP address (e.g. 192.168.1.101) of the device used for development.export PATH=/opt/iOSOpenDev:$PATH
export PATH=/opt/local/bin:$PATH
For MacPorts.export PATH=/opt/local/sbin:$PATH
For MacPorts
比如我的是這樣
然後還需要修改Xcode文件的配置文件,參考我上面說的文章。
6:在你的手機設備安裝OpenSSH
在設備上安裝OpenSSH並且在設備上添加SSH簽名.在Cydia(別告訴我你設備沒越獄…)裏搜索OpenSSH安裝.建議更改SSH的默認密碼,默認密碼是:alpine.更改方法是在Mac上登陸設備的SSH.命令”ssh root@<設備IP>”.登陸後輸入命令”passwd root”.輸入新密碼,注意是密文.
給SSH添加簽名,在Mac的Terminal裏輸入”iosod sshkey -h <設備IP>”,中間問你是否繼續,當然yes.如果期間失敗了重新試下.我失敗了好幾次.可能是設備屏幕關閉會斷網(我的iPod Touch總斷,iPad就不會).這樣就不用密碼也可以登陸設備SSH了.
然後就可以建工程,
爲了方便的調試,還要在工程裏設置一些參數.這裏介紹下這些參數的意義.首先打開程序設置TARGETS裏的工程
- iOSOpenDevCopyOnBuild 布爾值YES/NO 默認是NO,是否把生成的可執行文件拷貝到/var/root/iOSOpenDevBuilds/[project name]/[executable name] 路徑下.是爲了方便那些遠程SSH控制的程序,可能暫時用不到.
- iOSOpenDevDevice 設置你設備的IP.
- iOSOpenDevInstallOnProfiling 布爾值 默認爲YES, 是否在build for profiling的時候直接遠程安裝到設備上.
- iOSOpenDevPath 不要修改此項,是iOSOpenDev的安裝路徑.
- iOSOpenDevRespringOnInstall 布爾值 默認爲YES,是否在安裝後重啓SpringBoard.
iOSOpenDev默認安裝在/opt/iOSOpenDev裏,在裏面可以找到undocument api的頭文件.
編譯的時候不能像正常的App點Run,點擊Product->Build For->Build For Profiling.配置好上面的設備IP,程序會自動安裝到設備裏.
最後還需要個真機調試
首先你的手機設備安裝下列插件
在你的手機終端(Terminal)上建個命令 tail -f/var/log/syslog,就是說終端上運行的Log會打印到var/log/syslog上。接着還需要在你的手機目錄var/log上建個常規文件syslog來保存日誌,記住類型是常規文件,訪問權限最好設成讀取,寫入,執行。讓你的syslog文件很大時,可以刪掉然後重新在建,但必須重啓手機才能生效