綁定帳號登入

Android 台灣中文網

Android 台灣中文網 標籤 透過 相關日誌

tag 標籤: 透過

相關日誌

分享 透過 網路 使用 ADB 工具 監控 裝置
jianrupan 2017-7-5 10:45
ADB 功能簡介: ADB 全稱Android Debug Bridge, 是android sdk裡的一個工具, 用這個工具可以直接操作管理android模擬器或者真實的 andriod 設備。 操作功能說明: networking: connect HOST connect to a device via TCP/IP 執行指令使用: adb connect 192.168.2.133 或 adb connect 192.168.2.133:5555 遇到問題: unable to connect to 192.168.2.160:5555: cannot connect to 192.168.2.160:5555: 無法連線,因為目標電腦拒絕連線。 (10061) 接上 USB Debug 線,進入機器內部查看網路狀態: C:adb devices -- 插入debug 線後 顯示 裝置 List of devices attached 20080411 device C:adb shell netstat -- 以 Shell 指令查詢目前 裝置網路狀態 Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:8554 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:5037 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:38421 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:1690 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:38431 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:1923 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:1960 0.0.0.0:* LISTEN .... 發現 5555 Port 並沒有啟動。 先嘗試 其他 port 是否可用: C:adb connect 192.168.2.160:8554 -- 用 8554 連看看 connected to 192.168.2.160:8554 C:adb devices List of devices attached 192.168.2.160:8554 offline -- offline No Work C:adb shell -- 都已經跟你說 No Work 了 還硬要用嗎, 哈.... error: device offline 怎麼辦呢?? 只好直接啟動 5555 port 了。 方法有三種: 1.接上 Debug 線,直接啟動 5555 port,再以 網路方式 連接操作 -- 很無聊的舉動,多此一舉,而且每次開機都須重新執行一次。 2.將啟動方式 建於 開機程序,每次開機 就會自動 啟動 5555 port -- 聰明多了,但若要 所有裝置 都如此 須更新 IMAGE 檔,有點小風險。 3.運行的 APK 程式內 開機程序直接執行 啟動 5555 port -- 由 AP 來處理 風險少多了。 一一來介紹吧: 方法一: 直接啟動 接上 Dubug 線,執行 C:adb tcpip 5555 restarting in TCP mode port: 5555 C:adb shell root@android:/ # netstat | grep 5555 -- 找到 剛剛建的 5555 port 了 tcp 0 0 0.0.0.0:5555 0.0.0.0:* LISTEN 移除 Bebug 線,以 網路連接試試: C:adb connect 192.168.2.160 connected to 192.168.2.160:5555 C:adb devices List of devices attached 192.168.2.160:5555 device C:adb shell root@android:/ # netstat | grep 5555 -- 已經與 我的 PC 192.168.2.96 連上了 tcp 0 0 0.0.0.0:5555 0.0.0.0:* LISTEN tcp 51 0 192.168.2.160:5555 192.168.2.96:1283 ESTABLISHED 此時你的 Android 開發平台 也可以 看到該裝置。 方法二: 將啟動方式 建於 開機程序 root@android:/ # cat /etc/install-recovery.sh -- 建一個 批次檔 於開機自動執行 #!/system/bin/sh setprop service.adb.tcp.port 5555 stop adbd start adbd 重新啟動裝置後就可以直接 使用了,貼心提醒 注意 該文件權限喔。 root@android:/ # ls -l /etc/install-recovery.sh -rw-rw-rw- root root 74 2017-07-05 10:23 install-recovery.sh root@android:/ # chmod 777 /etc/install-recovery.sh -- 確認權限可執行 root@android:/ # ls -l /etc/install-recovery.sh -rwxrwxrwx root root 74 2017-07-05 10:23 install-recovery.sh 重啟裝置後直接執行: C:adb connect 192.168.2.160 connected to 192.168.2.160:5555 C:adb shell root@android:/ # netstat | grep 5555 tcp 0 0 0.0.0.0:5555 0.0.0.0:* LISTEN tcp 0 0 192.168.2.160:5555 192.168.2.96:1683 ESTABLISHED 方法三: 運行的 APK 程式內 開機程序直接執行 // 啟動 ADB 網路 控制 5555 port private void startADBTCPIPPort() { ListString commands = new ArrayListString(); commands.add("setprop service.adb.tcp.port 5555"); commands.add("stop adbd"); commands.add("start adbd"); ShellUtils.execCommand(commands, true); -- 至於 直接 執行 Shell 方式 請自行完成囉 }
個人分類: 軟體應用|1914 次閱讀|0 個評論