adbWireless能夠讓手機(jī)用無(wú)線來(lái)取代USB連接而使用ADB工具
手機(jī)需要root并且與電腦在同一局域網(wǎng)內(nèi)(可以連同個(gè)路由或者電腦開WiFi給手機(jī)連接)
ADB(Android Debug Bridge)是Android提供的一個(gè)通用的調(diào)試工具,借助這個(gè)工具,我們可以管理設(shè)備或手機(jī)
模擬器的狀態(tài)鸠项。還可以進(jìn)行以下的操作:
1婚被、快速更新設(shè)備或手機(jī)模擬器中的代碼,如應(yīng)用或Android系統(tǒng)升級(jí)洗做;
2弓叛、在設(shè)備上運(yùn)行shell命令;
3诚纸、管理設(shè)備或手機(jī)模擬器上的預(yù)定端口撰筷;
4、在設(shè)備或手機(jī)模擬器上復(fù)制或粘貼文件咬清;
注:本文參考資料會(huì)在文章最后注明闭专。文中不足之處,歡迎批評(píng)指正旧烧!
前言
手機(jī)沒(méi)有升級(jí)之前是5.0的系統(tǒng)影钉,當(dāng)時(shí)就在用adbwireless工具進(jìn)行無(wú)線調(diào)試。手機(jī)升級(jí)到了6.0系統(tǒng)掘剪,權(quán)限管理已經(jīng)改變平委,adbwireless又長(zhǎng)久沒(méi)有更新,導(dǎo)致手機(jī)即使root之后仍然不能夠進(jìn)行無(wú)限調(diào)試夺谁,報(bào)錯(cuò):unable to connect to 192.168.1.131:5555: cannot connect to 192.168.1.131:5555: 由于目標(biāo)計(jì)算機(jī)積極拒絕廉赔,無(wú)法連接。 (10061)匾鸥。起初以為是權(quán)限問(wèn)題蜡塌,就去github上把項(xiàng)目clon到本地,添加了6.0權(quán)限勿负,運(yùn)行之后錯(cuò)誤不變馏艾。多方求索,通過(guò)設(shè)置手機(jī)默認(rèn)的ADB連接方式可以解決該問(wèn)題(后面會(huì)講到)奴愉。搞定后琅摩,決定碼字分享一波,寫到最后锭硼,在別的相關(guān)資料里發(fā)現(xiàn)了更好用的無(wú)線調(diào)試工具(手動(dòng)大寫尷尬)房资,我會(huì)一并分享出來(lái),嚶嚶嚶嚶……(白忙活了Orz)檀头。有興趣的就往下看一下轰异,只是尋求一個(gè)無(wú)線調(diào)試的工具的話岖沛,工具下載下來(lái)就好了,無(wú)線調(diào)起來(lái)吧(XX搭独,根本停不下來(lái))烫止!第一次發(fā)文,多多指教!
adbwireless下載地址
adbwireless下載地址(寫入了6.0權(quán)限) 提取密碼:mwb1
AirADB下載地址
ADB的配置
手機(jī)下載安裝好adbwireless之后戳稽,在電腦上配置ADB(已安裝的可跳過(guò)該步驟)
- 在Sdk里找到adb.exe馆蠕,復(fù)制其所在路徑C:\Users\Maven\AppData\Local\Android\Sdk\platform-tools
如果不記得Sdk文件目錄,可以在Android Studio的設(shè)置里進(jìn)行查看
File>>Settings>>Appearance&Behavior>>System Settings>>Android SDK
- 配置ADB環(huán)境變量
右鍵我的電腦>>屬性>>高級(jí)系統(tǒng)設(shè)置>>環(huán)境變量
在系統(tǒng)變量(s)里找到Patch惊奇,選擇編輯互躬。將ADB所在的目錄復(fù)制進(jìn)去,注意用“颂郎;”與其他變量分隔開
- 檢測(cè)ADB是否配置成功
打開命令行窗口(windows鍵+R)
輸入指令'adb devices'
如下圖所示吼渡,則說(shuō)明配置成功
無(wú)線調(diào)試
接下來(lái)就是見證奇跡的時(shí)刻
- 打開adbwireless(已獲取root權(quán)限),界面顯示當(dāng)前設(shè)備的ip地址乓序;
- 打開Android Studio控制臺(tái)的Terminal寺酪,輸入adbwireless界面顯示的指令
adb connect 192.168.8.101,
輸出 connected to 192.168.8.101:5555則表示連接成功替劈。接下來(lái)開始無(wú)線調(diào)試之旅吧寄雀,跟USB連接無(wú)差別。
同樣的你也可以直接在命令行窗口輸入以上指令陨献,也是可以連接成功的盒犹。
注:下次要用時(shí)只需要把手機(jī)和電腦連同個(gè)局域網(wǎng),手機(jī)打開adbwireless眨业,電腦在命令提示符里執(zhí)行"adb connect xxx.xxx.xxx.xxx"(xxx.xxx.xxx.xxx為adbwireless顯示的ip地址)就行了急膀。
異常的處理
error: cannot parse version string: kg01
出現(xiàn)這個(gè)錯(cuò)誤先在環(huán)境里看下adb的路徑對(duì)不對(duì),如果沒(méi)錯(cuò)就在任務(wù)管理器里把a(bǔ)db.exe龄捡,或kadb.exe結(jié)束掉卓嫂,然后重新執(zhí)行adb connect xxx.xxx.xxx.xxx命令就行如果是adbwireless上的IP地址是adb connect 0.0.0.0的話,把a(bǔ)dbwireless關(guān)掉聘殖,重新啟動(dòng)一下
unable to connect to 192.168.1.131:5555: cannot connect to 192.168.1.131:5555: 由于目標(biāo)計(jì)算機(jī)積極拒絕晨雳,無(wú)法連接。 (10061)
出現(xiàn)這個(gè)錯(cuò)估計(jì)是手機(jī)root了就斤,但是沒(méi)有授權(quán)給adbwireless悍募,下載個(gè)root的授權(quán)管理蘑辑。然后給adbwireless授權(quán)洋机。再重新連接就行
如果以上方法不能解決問(wèn)題,試著切換一下ADB連接手機(jī)的方式
ADB支持兩種連接Android系統(tǒng)的方式洋魂,USB方式及網(wǎng)絡(luò)方式绷旗。一般手機(jī)及平板默認(rèn)會(huì)設(shè)置為USB方式喜鼓。
android系統(tǒng)底層運(yùn)行著一個(gè)服務(wù)(adbd),用于相應(yīng)和管理大家在電腦端的adb命令連接衔肢,
這個(gè)服務(wù)在啟動(dòng)時(shí)會(huì)根據(jù)手機(jī)的配置監(jiān)聽USB連接或網(wǎng)絡(luò)其中之一庄岖。
配置的屬性為:
service.adb.tcp.port <- 監(jiān)聽的網(wǎng)絡(luò)端口
以上屬性的值 > 0 : adbd將監(jiān)聽網(wǎng)絡(luò)對(duì)應(yīng)的端口(一般為5555)
以上屬性的值 <=-1: adbd將監(jiān)聽USB
具體設(shè)置方法(手機(jī)需要與電腦連接)
enable adb over wifi:
adb tcpip 5555 //在與手機(jī)相連的電腦上執(zhí)行重新連接就可以了。
注:關(guān)閉無(wú)線調(diào)試的指令為 ’adb disconnect xxx.xxx.xxx.xxx‘需要手動(dòng)切換ADB的連接方式(6.0以上)角骤,如果懶得每次在手機(jī)上敲命令隅忿,可使用這個(gè)工具AirADB,直接一鍵設(shè)置邦尊,并支持開機(jī)自動(dòng)設(shè)置1惩! 需root權(quán)限蝉揍!附上AirADB的主頁(yè)面
參考資料
slightlywobbly/github
Android studio使用adbwireless實(shí)現(xiàn)WiFi調(diào)試
ADB連接手機(jī)的兩種方式
Android 網(wǎng)絡(luò)調(diào)試 adb tcpip 開啟方法