1. Android WiFi調試常用標簽(Tag)
都知道的,要看Android log如果不加過濾器,那麼對應的信息量極其的龐大,要在這些大信息量找到我們關心的可能需要耗費比較長的時間,所以對於在調試WiFi過程,那些標簽是需要關注的呢?
WiFi的核心服務,是啟動整個WiFi服務的,它在我們的logcat關注范圍內
WiFi的掃描服務,一般我點開或者進入到WiFi列表頁面里,這個服務在後台幫我們刷新熱點,同樣在logcat關注的范圍內
關於有線與WiFi的切換,以及系統關於網路的鏈接,它幫忙在管著事呢,所以也在logcat關注的范圍內
系統網路相關的命令執行需要涉及到它,比如像Setting iface up 或者bring up eth0 這些事兒,它幫忙在處理,同樣也在WiFi調試時logcat關注范圍內
這個標簽也是比較常用到,在hardware/libhardware_legacy/wifi/wifi.c裡面,主要幫忙實現drv的載入/卸載,以及處理與wpa_supplicant之間相關事件的通信,常用於前期的WiFi Drv導入調試比較多,所以也在logcat關注范圍內
這是一個類似鏈接的服務,一般用於 Tethering wlan0 或者 等等,可以幫忙輔助調試WiFi流程,也在logcat關注范圍內
對於可以支持軟體AP的WiFi Dongle設備來說,這是一個很關鍵的服務(工具),一般用來初始化設置軟AP的參數(ssid、channel、psk、wpa、帶寬等參數)詳細具體可參考 hostapd.conf
WiFi中心處理樞紐,很多的WiFi狀態處理都離不開它,所以也是在logcat需要關注的范圍
它在系統網路有著重要的地位,因為其處理的業務包含了dns,路由控製表, dhcp相關等等,可以這么說,系統網路涉及到無法ping通一些特定的域名或者網站,可以來這里找找原因,所以它也在logcat關注范圍內,其中該文件在/system/netd/server/TetherController.cpp,
一個神奇且強大的工具,集中了dns,dhcp,router等功能,它很適合在一些小網路(輕量級)架構發揮著強大的作用,詳細可以參見 這里
可以看下它工作時列印
以上主要為調試WiFi 軟AP常用的Tag
對應的logcat 命令如下
在切換到 Sta 狀態時,我們需要重點關注wpa_supplicant對應的log
開啟wpa_supplicant的log,只需要修改一個地方即可,在找到對應init.xx.rc啟動wpa_supplicant進程,在啟動前添加 -dd的參數(將wpa_supplicant log 級別設為debug)即可,後續關於wpa_supplicant調試會繼續更新整理
2. 使用adb命令連接WiFi進行無線調試
1.用USB連接手機
2.運行 adb devices,測試是否連接成功,能出現設備列表即可;
3.打開命令輸入
adb tcpip 5555
結果
adb tcpip 5555;restarting in TCP mode port: 5555
4.查看手機ip
adb shell ifconfig wlan0
結果
wlan0 Link encap:UNSPEC inet addr:192.168.50.141 Bcast:192.168.50.255 Mask:255.255.255.0 inet6 addr: fe80::7a62:56ff:fee5:76d0/64 Scope: Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3454241 errors:0 dropped:23 overruns:0 frame:0 TX packets:2524887 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:152319933 TX bytes:535345072
連接wifi
adb connect 192.168.50.141
結果
connected to 192.168.50.141:5555
然後就可以進行wifi調試了
模擬器或者電視盒子在已知adb調試埠的情況下可以直接通過adb connect xxx.xxx.xxx.xxx:xxxx(模擬器或盒子的IP:adb調試埠),
通過adb devices看到已經連接的設備
常見模擬器adb埠如下圖所示:
3. ipconfig是什麼意思
ipconfig是調試計算機網路的常用命令,通常大家使用它顯示計算機中網路適配器的IP地址、子網掩碼及默認網關。其實這只是ipconfig的不帶參數用法,而它的帶參數用法,在網路應用中也是相當廣泛。
使用ipconfig時不帶任何參數選項,那麼它為每個已經配置了的介面顯示IP地址、子網掩碼和預設網關值。
(3)wifi調試命令擴展閱讀
ipconfig常用命令操作:
1、ipconfig /all:顯示本機TCP/IP配置的詳細信息
2、ipconfig /release:DHCP客戶端手工釋放IP地址
3、ipconfig /renew:DHCP客戶端手工向伺服器刷新請求
4、ipconfig /flushdns:清除本地DNS緩存內容
5、ipconfig /displaydns:顯示本地DNS內容
6、ipconfig /registerdns:DNS客戶端手工向伺服器進行注冊
7、ipconfig /showclassid:顯示網路適配器的DHCP類別信息
4. 【原創】安卓開啟WIFI調試
拿手機來調試,一天下來沒多久就滿電了,怕電池hold不住,找了個遠程調試的辦法。下面是操作步驟,給有需要的人幫助。
1、手機開啟USB調試模式
2、將手機連接到電腦上
3、命令行執行adb tcpip 5555(啟動手機上的adbd守護進程,並監聽5555埠,默認埠為5555,可使用其它埠)
4、獲取手機連接的wifi地址(命令行查看adb shell ip address show wlan0)
5、通過adb connect命令連接
註:adb connect需要和adb tcpip所使用的埠一致,如果不一致,則無法連接到該手機。