WiFi(網路)除錯Android手機

2021-08-14 12:27:52 字數 1981 閱讀 9058

adb本身提供了網路除錯的功能,所以,在不能直接用usb連上android手機的情況下,可以使用wifi連線adbd進行除錯。具體方法如下:

如果只是暫時需要用wifi連adb:

1.    手機、pc連上ap,確保兩者能夠正常分配ip(ifconfig檢視):

pc:手機:

(可以ping一下,驗證互通;若不互通,請檢查ap,pc,手機的網路設定)

2.    usb連上手機,確保adb devices能夠找到:

3.    adb tcpip 5555(埠號,可以指定其他值),該命令將會重啟手機上的adbd,開啟網路除錯功能:

4.    斷開手機到pc的usb連線,adb connect 192.168.31.196:5555,提示connected即為連線成功:

5.    此時adb devices就能夠看到通過tcp連線的手機了:

6.    此時,使用adb shell,就已經用wifi連上手機了:

7.    斷開連線,手機關機(或重啟)會自動斷開adbd到pc上adb的tcp連線;除此之外,有其他方法:

a)    adb disconnect 192.168.31.120, 可以從adb互動中exit,再執行該命令(tcp連線暢通,互動沒有卡頓情況下);

b)    另外開啟乙個終端執行上述命令(此時另乙個終端的adb互動自動結束);

c)    kill掉pc上的adb,也可結束adb互動,但不會清除adb devices中的裝置;

方法一需要每次先將手機通過usb連線到pc,使用adb tcpip命令開啟網路除錯功能,一旦手機重啟,又要重複這些步驟,比較麻煩。

一勞永逸的方法是,在手機的/system/build.prop中增加一行配置:service.adb.tcp.port=5555(同樣可以指定為其他值),實現開機就支援網路除錯,不需要先usb連上手機。

可以先將/system/build.prop從手機中pull出來,修改後再push進去(需要root許可權):

(注意:上面的adb remount命令需要root)

此後,每次重啟,wifi連線成功(可在pc上ping一下)後,就能直接使用adb connect 192.168.31.120連上手機了。

wifi連線的adb使用起來和usb連線的沒有任何區別,可以正常使用adb shell, adb logcat, adb am,adb reboot等命令,使用eclipse單步除錯也沒有任何問題(絕對**。唔,當然,如果wifi訊號不好,會很卡)。

下面就用eclipse裝乙個了乙個helloworld,並進行單步除錯,沒有任何問題:

adb和adbd分別位於pc和手機上,是典型的c/s模式。通常情況下,二者通過usb連線,而本文介紹的則通過tcp連線。工作原理是,pc端的adb命令通過usb(或tcp)連線傳送到手機端的adbd上,adbd執行具體的操作,並將相應的結果返回給adb,最後再終端中顯示出來。感興趣的同學可自行研究其原始碼,原始碼位於android專案的system/core/adb目錄(不知道如何獲取android原始碼,請檢視《從github獲取最新android原始碼》)。

沒有root手機也可以使用wifi除錯,唯一的要求是啟用手機的網路除錯功能,是不是**感頓生?是不是在想如何通過其他手段開啟某手機的tcp除錯功能,沒錯,在某知名黑客大賽上,就有黑客使用植入了惡意程式的「充電器」(偽裝,帶有mcu的usb控制器)輕鬆入侵了手機(不只是android,感興趣的同學自行搜尋)。

ps:最近在調android的usb-otg功能,手機因為插上了otg線,不能繼續用usb連線adbd,所以試了一下wifi連線,實驗成功,記錄在此,方便日後查閱。

通過wifi除錯android程式

資料線丟了,不想花錢去買,在網上看了看,android手機居然可以通過wifi進行程式的除錯,太好了,自己搞了一下,雖然網上寫的很詳細,但是還是有些問題,記錄下來,下次參考。1.首先讓android 聽指定的埠 這一步需要使用shell,因此手機上要有終端模擬器,不過網上很多,隨便找個就行了,依次敲...

通過wifi除錯android程式

看到網上一些程式寫的很複雜,基本上需要root才行,對於行貨的機器,root之後可能會失去保修.所以能不root還是盡量選擇不要root 如果root之後,可以選擇adbwireless這款軟體,很方便,點下按鈕就能準備好機器.如果不root也是可以的,需要確保你的電腦和手機都連上了wifi並處於同...

Android 使用Wifi連線ADB除錯App

在手機端使用超級終端進行設定 如果前面顯示的符號是 則執行su命令切換到 然後一次執行以下命令 setprop service.adb.tcp.port 9999 9999是我指定的埠下聯客戶端連線需要使用相同的埠 stop adbd start adbd 執行ok的情況下應該是不返回的 在wind...