如何利用adb對app進行抓包


一,使用場景:我們常使用的抓包工具有fiddler和Charles,但是有的時候我們設置完代理后無法聯網或者抓取不到的這種情況,那么我可以使用adb 進行抓包

二,1,抓取socket請求:

  我們先使用adb shell "ps|包名"  如:adb shell "ps|grep com.dangdang.buy2"。過濾包名的方法:adb shell dumpsys activity | find "mFocusedActivity"

  此命令可以過濾出該應用的進程號PID,如圖:

  

 

   接着執行adb shell 進入系統內部,執行logcat | grep PID(4763)

  

 

   最后的結果:(這是對socket進行的抓取)

  

 

   如果中文出現亂碼,可以在cmd中執行“chcp 65001”命令,將編碼改為UTF-8,防止中文顯示亂碼問題,如果出現chcp不是內部或者外面命令就需要在path中添加:C:\WINDOWS\system32

  2,抓取http或者https請求:

   步驟1,獲取包名

  步驟2,過濾進程

  步驟3,adb shell  logcat |grep 5303 | grep https > d:\test\tv.txt (過濾https直接把日志寫入到指定的文檔中)

  過濾http請求也是一樣的adb shell  logcat |grep 5303 | grep http > d:\test\tv.txt

  還可以添加時間進行抓取:adb shell  "logcat -v threadtime |grep 5303 | grep https" > d:\test\tv.txt

 

   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM