我目前的使用方式是:
調試自己的項目
-
先添加個symbolic斷點
image.png -
編輯斷點,編輯成下面這樣
image.png
UIApplicationMain
expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void *)dlopen("/Applications/Reveal1.6.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2) : ((void*)0)
-
/Applications/Reveal1.6.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib
這個路徑是自己的reveal的libReveal.dylib的路徑,根據自己的情況來定
-
-
找到自己的libReveal.dylib路徑:
image.png
-
然后把斷點移動到user,這樣以后新建或者打開其他工程都會有這個斷點了,不需要每次都創建斷點
image.png - 配著這些東西就已經能夠查看和調試自己xcode跑起來的工程了.
調試別人的app
就需要去cydia里去下載一個reveal loader
下載完成以后在設置就會有一個Reveal
點擊去以后就可以看到你手機上安裝的所有app,把你想調試的app開關打開就可以了.
打開開關以后重新啟動你想要調試app,然后在mac的reveal中就可以調試了.reveal4以前的版本都可以都只能是wifi調試,必須mac和手機連接的是同一個wifi才行.
注意:
必須將reveal的動態庫放到手機的Library/RHRevealLoader目錄里.
reveal的動態庫位置:
reveal 2以下
Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib
reveal 2以上
Reveal.app/Contents/SharedSupport/iOS-Libraries/RevealServer.framework/RevealServer
**** 以下內容是一年前學習reveal時用的方法了,目前可不可行,也不太清楚,由于自己的手機越獄而且裝了revelloader,自己也沒在使用下面的方法.****
1.先來看看用reveal怎么看自己項目
- 先配置一下
- -ObjC -lz -framework Revea
雙擊會彈出這么一個窗口,點擊加號 ,把-ObjC -lz -framework Revea復制進去,保存
- 在然后,需要導入一個庫
庫的位置在,打開reveal,看電腦狀態欄,打開Help,打開finder
添加進去就行,然后運行程序,成功的話就會提示,
- 在reveal點擊這里就可以看見自己的項目了
2:學習別人的結構,真的只是學習別人結構而已 - -
OK,廢話不多說,準備工具:
: reveal (不差刀就買正版,破解教程滿大街都是,網上一搜就全出來了)
-
:越獄的ios操作系統設備(PP越獄助手)
- 到PP官網下載當IOS版本的越獄工具,傻瓜式的,一鍵越獄,超簡單
- 建議先備份手機資料,以免越獄出問題或是下面的教程步驟出問題,導致手機白蘋果.到時候起碼資料不會丟失.
:OS操作系統電腦
都有了?那繼續往下看
手機越獄完了,會有一個這么一個應用
打開它,第一次打開會要一點時間去加載數據,然后會提示你有一些必要的東西需要安裝,跟著走就可以了。
-
然后點擊軟件源:
-
進入然間軟件源
- 點擊編輯,添加,輸入這個地址,然后添加源
- 就會出現這個東西 “威鋒源”
- 點進去,如果有很多東西(如下圖),就證明安裝成功了
- 點擊右下角的搜索,搜索“apple file conduit "2"”
點進去安裝完就OK。
- 然后還需要安裝一個東西,搜索“openssh”,然后安裝
越獄部分搞定了,那么就開始正戲了
打開reveal,看電腦狀態欄,打開Help,打開finder
看看是不是有這兩個文件,有就OK
打開終端
先查看一下自己手機的ip
在終端輸入這個命令,把我命令里面的ip地址改成你的就行,其他不變(reveal里那兩個文件不要動,這個命令會默認從那個文件夾提取文件,動了會找不到)
scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib root@192.168.0.X:/Library/MobileSubstrate/DynamicLibraries
沒有問題的話會提示輸入yes/no,這里輸入yes
然后讓你輸入密碼.
(進入越獄后安裝的那個cydia應用,下面有個已安裝選項,點進去,找到openssh,打開)
點擊這里:
在終端提示輸入密碼這里輸入這個(英文好的朋友可以直接看這個頁面,就是教你用這個ssh的)
沒問題的話終端會有一個上傳進度的畫面,上傳很快一兩秒就OK了。
然后上傳libReveal.plist文件(網上很多說libReveal.plist文件可以不傳,但是我試了幾次,不傳肯定白蘋果,建議上傳)
plist文件結構是這樣(但是一定要是json,如果是xml,會識別不了!):
不懂json和xml??沒關系,新建一個libReveal.plist文件,然后用文本編輯打開,把下面這個代碼復制,保存
{
Filter = {
Bundles = (
"net.qihoo.freewifi",
"com.tencent.QQMusic",
"cn.zaker.iphone",
"com.fenbi.ape.gz",
secoo,
"com.apple.Numbers",
"com.tencent.mqq",
"com.taobao.kbmeishi",
"com.apple.AppStore",
);
};
}
這里Bundles數組里保存的都是手機里app的BundleID。
查看應用的BundleID,可以用itools軟件,連接上手機,點擊應用,點擊文件夾圖標
會自動跳到一個文件夾里,找到這個文件(是個隱藏文件,需要讓電腦顯示隱藏文件才行)
然后導出就行了
找到導出的文件,打開,這個就是
寫到自己的plist文件就可以了(。。你要是plist文件都不會弄,就暫時先不要學這個了)
okok,plist文件搞定后,我是先把plist文件還是放到剛才reveal的那兩個文件目錄下的,這樣你就可以直接通過我這個命令直接上傳到手機里,方法跟之前那個一樣。
警告:剛才放到reveal里面的plist文件,要刪除,要不然reveal會打不開!!如果往plist里添加了新的BundleID需要重啟手機才行
scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.plist root@192.168.0.X:/Library/MobileSubstrate/DynamicLibraries
重啟手機,萬事OK。
如有說錯的地方,還請指正