監聽android請求
Ⅰ 如何監控android網路請求
可以利用相關安全軟體來監控,如果有ROOT許可權更好。首推LBE安全大師,你的採納就是對我的肯定
Ⅱ android中如何監聽到其他應用的網路請求數據
目前android提供的工具沒事,我們寫工程都是自己寫http請求,每次請求的時候打Log,記錄請求的url和參數。請求回來了,打log,記錄回來的數據,記錄數據的狀態,數據的內容。 目前只能這樣。如果用模擬器的話,可以用vnStat或者CommView之類的監控電腦網卡的請求,間接的監控手機。一般開發用手機測試,這樣就不行了。只能打log了
Ⅲ Android監聽網路狀態框架
就這么簡單,讓我們開始吧。
看下最終實現的使用:
日誌:
好了,新建一個AndroidLibray開始實現。
許可權走一波:
首先,咱們需要一個監聽網路狀態的工具類
在lib中創建一個廣播,然後再配置文件里注冊一下。
完善下咱們的receiver:
監聽介面:
manager:
再加上一個枚舉類:
OK,一套正常操作,一個最普通網路監聽類寫完了。接著咱們嘗試用註解,讓這個小框架看的有檔次些。
完善一下自定義註解:
然後來捋一下思路:
照樣是固定三部曲,按照步驟來:
1.先完善我們的注冊方法
在這里,我創建了一個方法封裝類。比較簡單: MethodManager
這里的 mMethodList 是方法封裝類(MethodManager)的List,用來存儲篩選後的MainActivity中方法,也就是網路監聽方法。以下是方法的篩選:
咱們定義一個post方法,去完成這項工作:
這里實現了通過網路監聽註解上方的參數,我們可以單獨監聽某一種網路狀態的變化。比如
上方參數表明,只有在WIFI斷開和連接的時候,方法才會做出響應。想要所有提示設置為AUTO就行啦。
OK,做完邏輯以後執行一下:
大功告成!跑一下看看效果!
項目地址: https://github.com/CocoYuki/NetListener
是一個練手的小項目,實際網路請求在7.0時就能通過一個CallBack輕松搞定了。
Ⅳ Android 快速實現網路監聽
github: https://github.com/Levine1992/HttpCapture
看不到動圖可以到我的碼雲倉庫看 點擊跳轉碼雲
1. 項目根目錄的build.gradle中添加
2. app目錄中build.gradle中添加
3. application中進行初始化
4. okhttp添加攔截器
這樣,打開你的app的時候就可以像上面的動畫一樣有一個黑色浮窗按鈕了,點擊隨時可以查看app的網路請求信息了
這個時候自己實現一下 HCNetDataConvert 介面,對數據進行解密
然後在攔截器中實例化
其實這個很簡單,但是自己一直沒發現有人寫,所以自己就寫了個,方便大家,如果有人寫了而且寫的功能更強大,請告訴我學習學習
Ⅳ android開發怎麼監聽網路請求
Android中網路情況時有變化,比如從有網到沒網,從wifi到gprs,gprs又從cmwap到cmnet...等等!
如果你的程序有些功能是需要網路支持的,有時候就需要監聽到網路的變化情況進行相應的處理。
比如說下載一個文件,如果突然斷網了,怎麼處理?網路又恢復了,如何監聽到並重連?
當網路變化的時候系統會發出義個廣播broadcast,只要在程序中注冊一個廣播接收器BroadcastReceiver,並在IntentFilter中添加相應的過濾,這樣一旦網路有變化,程序就能監聽到
public static final String CONNECTIVITY_CHANGE_ACTION = "android.net.conn.CONNECTIVITY_CHANGE";
private void registerDateTransReceiver() {
Log.i(TAG, "register receiver " + CONNECTIVITY_CHANGE_ACTION);
IntentFilter filter = new IntentFilter();
filter.addAction(CONNECTIVITY_CHANGE_ACTION);
filter.setPriority(1000);
registerReceiver(new MyReceiver(), filter);
}
在MyReceiver中:
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.i(TAG, "PfDataTransReceiver receive action " + action);
if(TextUtils.equals(action, CONNECTIVITY_CHANGE_ACTION)){//網路變化的時候會發送通知
Log.i(TAG, "網路變化了");
return;
}
}
當網路變化時,從有網到沒網也會發廣播,就舉的例子來說,如果下載時斷網了,接收到廣播的時候要判斷當前網路是可用還是不可用狀態,如果可用進行什麼操作;不可用進行什麼操作:
public static NetworkInfo getActiveNetwork(Context context){
if (context == null)
return null;
ConnectivityManager mConnMgr = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (mConnMgr == null)
return null;
NetworkInfo aActiveInfo = mConnMgr.getActiveNetworkInfo(); // 獲取活動網路連接信息
return aActiveInfo;
}
這個方法返回的aActiveInfo可以判斷網路的有無,如果返回的是null,這時候是斷網了,如果返回對象不為空,則是連上了網。在返回的NetworkInfo對象里,可以有對象的方法獲取更多的當前網路信息,比如是wifi還是cmwap等,就不多說了。
Ⅵ 如何監控android應用的發送http 請求
用tcpmp ,什麼包都可以抓
比如
tcpmp -p -vv -s 0 -w /sdcard/capture.pcap
然後用wireshark 查看