來源:互聯網 閱讀:-
在進行APP爬蟲開發的時候,我們一般是通過手機連接PC端代理上網,進行抓包分析,那么以這種方式抓包的時候就需要在手機端進行對應的操作,但是我們不可能一直通過手動去操作手機進行抓包,所以要使用adb這種Android開發命令的方式進行操作。但是現在很多手機權限控制比較嚴密,直接連接真機有很多操作是不支持的,所以就必須用到模擬器。很慶幸安卓模擬器有很多種,下面我們就介紹一下APP爬蟲開發環境的簡單搭建和基礎使用。
安卓模擬器有很多種,夜神模擬器、騰訊手游助手、mumu模擬器等都是比較常用的模擬器,其中夜神模擬器是比較好的,但是它不支持Mac系統,mumu模擬器是由網易開發的,支持Windows和Mac平臺,而且更新比較頻繁,所以我使用的是mumu模擬器,官方文檔和論壇也比較豐富。安裝好以后就可以直接打開使用,如果碰到問題,可以在官方的常見問題中進行查看。
安裝完模擬器之后,我們就要安裝adb了,在Mac上首推brew cask進行安裝
然后可以先使用真機進行測試,打開手機的“開發者選項”,并啟用“USB調試”模式,在控制臺輸入adb devices
這樣就表示我們的adb已經安裝好了,下面就是連接我們的模擬器了。
在模擬器中打開“USB調試模式”,然后在控制臺中關閉adb server,再重啟即可
adb kill-serveradb server
這個時候再查看連接設備
438ec4b1為真機,emulator-5554為模擬器,要連接機器使用以下命令
adb -s 438ec4b1 shell
連接真機
連接模擬器
在紅框中你會發現區別,在連接真機的ls前面是$符號,在連接模擬器的ls前面是#,#符號就表示擁有root權限,非#符號就表示沒有root權限,我試過幾個真機,都是無root權限的,可能需要我們自行root后才能正常使用。所以這就是我們一定要使用模擬器的原因了。
因為我們不在真機上進行調試,所以就把連接斷掉,只保留模擬器一個連接設備。在這種情況下,我們的adb命令也可以簡短一些,比如使用adb連接設備,原來是adb -s xxx shell,現在就可以直接寫adb shell,其他的adb命令也是類似。
電腦端常用的抓包軟件Fiddler、Charles、mitmproxy,Fiddler是專屬于Windows系統的抓包軟件,并且功能強大,Charles是跨平臺的軟件,但是功能不如Fiddler,在Mac和Linux使用Charles,mitmproxy也是跨平臺的抓包工具,雖然也有可視化界面,但是不夠友好,使用成本比較高,因此我們常用mitmproxy配合Python實現抓取工作。mitmproxy需要專門寫了一個帖子,這里就不在詳述了。
打開SDK Manager,安裝對應的SDK版本
export ANDROID_HOME=/Users/xxxx/Library/Android/sdkexport PATH=${PATH}:${ANDROID_HOME}/toolsexport PATH=${PATH}:${ANDROID_HOME}/platform-toolsexport PATH=${PATH}:${ANDROID_HOME}/build-tools/29.0.2
ANDROID_HOME路徑就是上面圖中SDK下載路徑
PS: 上面環境變量中的build-tools/xx.xx.xx要在build-tools目錄下去看具體情況,我們主要是需要使用aapt工具,所以aapt在哪個目錄下就填寫哪個目錄。
配置完以后執行source ~/.bash_profile命令,重新加載環境變量,然后輸入aapt -v查看命令是否正常運行
3.安裝JDK從官網下載JDK 8,官網下載需要注冊賬號,比較麻煩??梢栽谡业谌骄W站上的下載,我是在一個百度云分享鏈接下載的,可惜現在忘了地址了,不好意思。
然后就可以正常使用了。
推薦閱讀:運動app推薦