本文介紹如何經過網絡(尤指無線網絡)與Android的adbd進行鏈接。
原理:
adb server: 計算機上的一個服務進程,進程名爲adb
adb daemon: Android 手機上的一個服務進程,進程名爲adbd
adb client: 你能夠認爲是計算機上的一個終端窗口,進程名也爲adb
你的指令經過adb client 交給adb server,server和daemon之間進行通信。
所以,這裏創建的鏈接其實是server和daemon之間的鏈接。
有三種方法:shell
這個沒什麼技巧的。網絡
1.手機:讓adbd監聽指定端口less
#如下指令必須以root權限運行
#setprop 是指set properties,用法 setprop
setprop service.adb.tcp.port 5555
stop adbd #中止adbd
start adbd #啓動adbd
2.手機:鏈接網絡(3G或者WLAN)
假定你得到的IP地址爲192.168.1.102
tcp
3.計算機:鏈接手機code
adb connect 192.168.1.102:5555
server
4.計算機:檢查是否成功進程
adb get-state
ip
應當輸出device
或者emulator-5555
,這取決於你的設置。
5.如何改回原先狀態(經過USB鏈接)get
setprop service.adb.tcp.port -1 stop adbd start adbd
這是最簡單的方法,可是成功率不高。咱們先看一下如何實現:pip
adb tcpip 5555 #讓adbd從新啓動,並監聽端口5555 adb connect 192.168.0.101:5555
改回原先狀態:
adb usb
細心的朋友應該已經發現了,經過adb發出的命令是用戶級的(實際在手機上的用戶爲shell),而切換監聽方式所需的權限須要root才行。
這就是爲何會失敗。
若是你的手機有足夠的權限的話,你能夠試試adb root
若是成功的話,再執行上面的命令。
感謝做者:lesca分享