手機終端app流量測試


一、Android終端app流量測試

流量測試的原理:在安卓手機上,應用的網絡流量數據都會保存在系統的/proc/uid_stat/$UID/tcp_rcv 和/proc/uid_stat/$UID/tcp_snd兩個文件夾里面,一個是請求耗費的流量,一個是接受的數據流量,這兩個數據是由系統記錄的,在我們啟動某個軟件的時候,系統會根據這個應用所占用的進程號pid在根目錄下創建一個以這個命名的文件夾,在文件夾的下面有存有UID的文件。

了解一下PID和UID可以查看博客:https://blog.csdn.net/vshuang/article/details/43639211

獲取PID:

查看當前應用的UID,手機連接電腦,adb shell ,adb shell ps | grep “你想測試的應用的包名”

如上圖紅色框中就是我們要查的PID,然后再根據PID查找UID
進入 /proc/28904/status

  如上圖紅色框中就是我們要查的UID

cd uid_stat/10137

cat tcp_rcv

cat tcp_snd

 如上圖就可以看到當前這個應用的上下行流量,單位是byte。

另一種獲取流量數據方法:
cat /proc/net/xt_qtaguid/stats|grep #uid#
第六列是接收數據,第八列是傳輸數據。第六列和第八列流量加一起。一個UID對應多個進程,所以兩行流量全部相加。獲取的流量數據也app累積流量。

 具體查看博客https://blog.csdn.net/u013948858/article/details/76079367

安卓8.0以上手機使用如下方法測試流量:
1.查看應用PID,進入adb shell 后使用命令PS -A 通過包名找到PID;

2.查找應用UID,進入/proc/11970 目錄--- cd /proc/11970 后通過命令 cat status 查看UID;

3.在adb shell 中使用命令,cat /proc/net/xt_qtaguid/stats | grep UID 查看應用流量信息。記錄上行流量tx_bytes 為Tx1,下行流量rx_btyes為Rx1;

4.操作應用;

5.使用命令,cat /proc/net/xt_qtaguid/stats | grep UID 查看應用流量信息。記錄上行流量tx_bytes 為Tx2,下行流量rx_btyes為Rx2;

6.兩次測出來的數據和,獲取應用使用流量B=(Tx2-Tx1)+(Rx2-Rx1).

二、iOS終端app流量測試

手機連接電腦,使用xcode-open developer tool - instrument-network測試流量。

開始后,操作手機,查看流量消耗

流量消耗為 byles in +byles out

 

謝謝查看,筆記后期修改

2019-09-22


免責聲明!

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



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