安卓設備,通過 Magisk 實現開機自動啟動 Adb 無線調試
前提安裝 Magisk 或 KernelSU 程序
在 /data/adb/service.d 文件夾下,創建一個腳本,內容如下:
adb.sh
#!/system/bin/sh
# 延時啟動
sleep 5
# 啟動 ADB
echo "Starting ADB..."
setprop service.adb.tcp.port 5555
stop adbd
start adbd在開發者模式中,打開調試授權永不過期
連接命令
adb kill-server
adb connect 127.0.0.1:5555
scrcpy --no-audio --max-size 2048
常用參數
--no-audio 關閉音頻
--max-size 2048 分辨率
--turn-screen-off 關閉屏幕
--show-touches 顯示觸摸點
--stay-awake 保持喚醒
--screen-off-timeout=3000 設置超時,秒其他命令
開啟無線調試
adb tcpip 5555ADB 可操作的目錄
/data/local/tmp/禁用 ADB授權超時功能
adb shell
settings put global adb_allowed_connection_time 0防止 USB 調試授權撤銷
備份 adb_keys 授權文件
# 複制文件
cp /sdcard/adb/adb_keys /data/misc/adb/adb_keys
# 更改文件所有者
chown system:shell /data/misc/adb/adb_keys
# 授予文件權限
chmod 640 /data/misc/adb/adb_keys默認授權 Adb 調試
#!/system/bin/sh
set -o standalone
set -uo pipefail
# 防重複執行鎖:已運行則直接退出
LOCK_FILE="/tmp/adb_config.lock"
[ -f "$LOCK_FILE" ] && exit 0
touch "$LOCK_FILE"
# 日志文件
LOG_FILE="/data/adb/adb_auto_config.log"
> "$LOG_FILE"
echo "[$(date)] 澎湃 OS ADB 純淨版配置啟動" >> "$LOG_FILE"
# 1. 等待系統完全啟動
until [ "$(getprop sys.boot_completed 2>/dev/null)" = "1" ]; do
sleep 3
echo "[$(date)] 等待系統啟動:sys.boot_completed未就緒" >> "$LOG_FILE"
done
sleep 6
echo "[$(date)] 系統啟動完成,開始配置 ADB" >> "$LOG_FILE"
# 2. 核心 ADB 配置
## 開發者模式 + 基礎 ADB 開關
setprop persist.sys.development_settings_enabled 1
setprop persist.sys.adb_enabled 1
setprop persist.sys.adb_allowed_connection_time 0
setprop persist.sys.adb_wifi_enabled 1
## 持久化服務屬性
setprop persist.service.adb.enable 1
setprop persist.service.debuggable 1
setprop persist.sys.usb.config adb,mtp
## MIUI/澎湃OS專屬權限
setprop persist.security.adbinstall 1
setprop persist.security.adbinput 1
setprop persist.sys.adb_notify 0
## 無線 ADB 5555 端口
setprop persist.adb.tcp.port 5555
setprop service.adb.tcp.port 5555
setprop persist.sys.adb_tcp_port 5555
echo "[$(date)] ADB系統屬性配置完成" >> "$LOG_FILE"
# 3. ADBD 重啟
killall -9 adbd 2>/dev/null || true
sleep 2
start adbd 2>/dev/null || /system/bin/adbd 2>/dev/null &
echo "[$(date)] ADBD服務重啟完成" >> "$LOG_FILE"
# 4. 最終配置驗證
ADBD_PID=$(pidof adbd 2>/dev/null || echo "未運行")
echo "[$(date)] 配置全部完成!當前有效狀態:
無線ADB端口:$(getprop persist.adb.tcp.port 2>/dev/null)
ADB啟用狀態:$(getprop persist.sys.adb_enabled 2>/dev/null)
無線ADB開關:$(getprop persist.sys.adb_wifi_enabled 2>/dev/null)
ADBD進程PID:${ADBD_PID}" >> "$LOG_FILE"
# 釋放鎖
rm -f "$LOCK_FILE"
exit 0版權屬於:zgcwkj
本文鏈接:https://www.zgcwkj.com/archives/215.html
轉載聲明:請注明本文章的標題及內容的出處和聲明,謝謝
評論已關閉