1. 程式人生 > IOS開發 >好用的iOS除錯工具PonyDebugger

好用的iOS除錯工具PonyDebugger


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的請求。

我就直接把官方的圖搬運過來用了^_^

NetworkDebugging

Core Data 瀏覽

Core Data瀏覽,只需要通過在應用程式的程式碼中啟用就可以了ponyDebugger?.enableCoreDataDebugging()

CoreDataBrowser

檢視層次除錯

PonyDebugger會在瀏覽器中以XML的方式展示應用檢視層次結構,並且可以在其中看到檢視元素的屬性。在面板中選中一個元素時,對應手機上也會被選中。當刪除一個時也對應刪除,可調整檢視大小。

ViewHierarchyDebugging

遠端日誌

PonyDebuggert通過PDLog和PDLogObjects函式遠端記錄日誌檢視物件資料

RemoteLogging

建立一個目錄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安裝的

  1. 在專案Podfile中引入pod 'PonyDebugger'
  2. 開啟一個在專案目錄的命令視窗,執行pod install
  3. swift專案,需要在連線橋檔案中匯入標頭檔案,#import <PonyDebugger/PonyDebugger.h>
  4. 新增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"))
複製程式碼

開啟除錯網頁

http://localhost:9000/

部落格原文

有視訊演示哦!

好用的iOS除錯工具PonyDebugger

結束

這裡主要還是演示了一些怎麼安裝配置的PonyDebugger,因為在這裡遇到些問題所以在此記錄一波。謝謝觀看!