好用的iOS除錯工具PonyDebugger
阿新 • • 發佈:2019-12-25
title: 好用的iOS除錯工具PonyDebugger date: 2019-10-15 23:38:02 thumbnail: blog/ponydebugger.jpeg categories:
- iOS tags:
- Debug
好用的iOS除錯工具PonyDebugger
PonyDebugger:github.com/square/Pony…
簡介
PoneyDebugger是一個很給力的除錯工具,它能通過瀏覽器除錯App。
需要電腦上配置服務環境,在iOS專案新增sdk的配置。便可以對App進行網路請求監控、Core Data資料檢視、檢視當前介面UI層級等。
網路請求除錯
我們的請求會通過PonyDebugger的代理服務 ponyd,可以直觀的像在瀏覽器上除錯網頁請求一樣,除錯App的請求。
我就直接把官方的圖搬運過來用了
^_^
Core Data 瀏覽
Core Data瀏覽,只需要通過在應用程式的程式碼中啟用就可以了ponyDebugger?.enableCoreDataDebugging()
檢視層次除錯
PonyDebugger會在瀏覽器中以XML的方式展示應用檢視層次結構,並且可以在其中看到檢視元素的屬性。在面板中選中一個元素時,對應手機上也會被選中。當刪除一個時也對應刪除,可調整檢視大小。
遠端日誌
PonyDebuggert通過PDLog和PDLogObjects函式遠端記錄日誌檢視物件資料
建立一個目錄ponyd
,並進去該目錄
mkdir ponyd
cd ponyd
複製程式碼
將必要的依賴下載這個目錄中ponyd
curl -O -L https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz
curl -O -L https://pypi.python.org/packages/25/5d/cc55d39ac39383dd6e04ae80501b9af3cc455be64740ad68a4e12ec81b00/setuptools-0.6c11-py2.7.egg
curl -O -L https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/pybonjour/pybonjour-1.1.1.tar.gz
tar xvf pybonjour-1.1.1.tar.gz
mv pybonjour-1.1.1 pybonjour
複製程式碼
下載bootstrap-ponyd.py
curl -O -L https://github.com/downloads/square/PonyDebugger/bootstrap-ponyd.py
複製程式碼
在bootstrap-ponyd.py
新增安裝pybonjour
的命令
subprocess.check_call([join(home_dir,'bin','python'),join('pybonjour','setup.py'),'install'])
複製程式碼
新增在如下的位置上
def after_install(options,home_dir):
subprocess.check_call([join(home_dir,'install'])
subprocess.check_call([join(home_dir,'pip'),'install','-U','-e','git+https://github.com/square/PonyDebugger.git#egg=ponydebugger'])
複製程式碼
通過執行bootstrap安裝
cat ./bootstrap-ponyd.py | python - --never-download --ponyd-symlink=/usr/local/bin/ponyd ~/Library/PonyDebugger
複製程式碼
上面的安裝會出錯,因為一些包無法找到,我們通過下面的命令去修復
~/Library/PonyDebugger/bin/easy_install --find-links https://pypi.python.org/simple/singledispatch/ -U singledispatch
~/Library/PonyDebugger/bin/easy_install --find-links https://pypi.python.org/simple/backports-abc/ -U backports_abc
~/Library/PonyDebugger/bin/easy_install --find-links https://pypi.python.org/simple/certifi -U certifi
~/Library/PonyDebugger/bin/easy_install --find-links https://pypi.python.org/simple/six/ -U six
~/Library/PonyDebugger/bin/easy_install --find-links https://pypi.python.org/simple/futures -U futures
sudo ~/Library/PonyDebugger/bin/easy_install -U pybonjour
複製程式碼
安裝devtools
ponyd update-devtools
複製程式碼
執行
ponyd serve --listen-interface=127.0.0.1
複製程式碼
配置iOS sdk
下面演示的是通過pod安裝的
- 在專案Podfile中引入
pod 'PonyDebugger'
- 開啟一個在專案目錄的命令視窗,執行
pod install
- swift專案,需要在連線橋檔案中匯入標頭檔案,
#import <PonyDebugger/PonyDebugger.h>
- 新增sdk配置:
let ponyDebugger = PDDebugger.defaultInstance()
ponyDebugger?.enableNetworkTrafficDebugging()
ponyDebugger?.enableViewHierarchyDebugging()
ponyDebugger?.setDisplayedViewAttributeKeyPaths(["frame","hidden","alpha"])
ponyDebugger?.forwardAllNetworkTraffic()
ponyDebugger?.enableCoreDataDebugging()
ponyDebugger?.enableRemoteLogging()
ponyDebugger?.connect(to: URL(string: "ws://localhost:9000/device"))
複製程式碼
開啟除錯網頁
部落格原文
有視訊演示哦!
結束
這裡主要還是演示了一些怎麼安裝配置的PonyDebugger,因為在這裡遇到些問題所以在此記錄一波。謝謝觀看!