花式玩轉adb、fastboot

這也是手機投屏到手機的一個實現原理git

你在實際開發時是否遇到如下問題:github

  • 開發時總須要鏈接數據線,老是不方便
  • 電腦輸出的電流老不夠,一到開發時就體驗不了手機的快充

ADB在哪

$sdk/platform-tools
複製代碼

打開ADB遠程調試

須要設備與PC出於同一局域網內

手機已有root權限?

在手機終端中執行bash

setprop service.adb.tcp.port 5555
stop adbd
start adbd
複製代碼

隨後在pc端執行服務器

adb connect 設備ip:5555
複製代碼

手機沒有root權限

先使用數據線鏈接電腦

PC端輸入:app

adb tcpip 5555
複製代碼

拔掉數據線

PC端輸入:socket

adb connect 設備ip:5555
複製代碼

ADB端口轉發

adb forward tcp:5005 tcp:5005
#PC上全部5005端口通訊數據將被重定向到手機端5005上
複製代碼

也就是說這個命令執行完成後,在手機上面建立一個等待5005端口的socket,咱們使用pc就能來鏈接127.0.0.1:5005來與手機的socket通訊tcp

Fastboot是用來幹嗎的?

Fastboot工具須要設備啓動fastboot模式,通常是音量-加開機鍵長按 用來線刷你的安卓設備工具

這就花式了?

咱們將adb/fastboot經過交叉編譯到咱們的arm64設備上,不會編譯不要緊,我們用別人編好的spa

adb-ndk調試

以下:

也就是說咱們以前pc能對設備實現的操做,咱們都能用一個設備對另外的設備進行一樣的操做

手機又不能調試軟件,有啥用

  • 能夠卸載刪除局域網其餘設備的app
  • 管理其餘設備的文件
  • 經過otg數據線實現手機對手機刷機(可行,實驗過了)
  • 轉發對方設備的端口到本設備(就能夠鏈接對方設備的套接字,投屏等等)

跨局域網調試設備

這隻給個思路

須要藉助內網穿透工具(如frp),還須要一臺服務器

依舊使用arm64的frp,將設備的adb遠程監聽端口映射到服務器的指定端口

隨後在PC執行

adb connect 服務器ip:你指定的端口
複製代碼

這樣就實現了調試外網的任意設備 就能夠經過scrcpy等工具遠程控制外網的設備

相關文章
相關標籤/搜索