@echo off
title ADB激活助手

setlocal EnableDelayedExpansion

REM 勿设置 ADB_SERVER_PORT：自定义端口会启动另一套 adb 服务，USB 设备只挂在默认 5037 端口上，会导致此处一直「未检测到手机」，而你在终端里 adb devices 仍正常。
set "BUNDLED_ADB=%~dp0adb\windows\adb.exe"
set "ADB_PATH=!BUNDLED_ADB!"
where adb >nul 2>&1 && set "ADB_PATH=adb"

if /I not "!ADB_PATH!"=="adb" if not exist "!ADB_PATH!" (
    echo 未找到自带 adb.exe：!ADB_PATH!
    pause
    exit /b 1
)

:main
cls
echo ========================================
echo     林林远程控制ADB激活工具
echo ========================================
echo.
echo 请先用USB连接手机，然后按回车继续
pause >nul

echo.
echo 正在启动ADB服务...
"%ADB_PATH%" kill-server >nul 2>nul
"%ADB_PATH%" start-server >nul 2>nul
timeout /t 1 >nul

:loop
echo.
echo 正在检测设备...
set count=0
for /f "skip=1 tokens=1,2" %%a in ('"%ADB_PATH%" devices 2^>nul') do (
    if "%%b"=="device" set /a count+=1
)

if !count! equ 0 (
    echo.
    echo 未检测到手机！
    echo 请检查：
    echo 1. USB数据线是否连接手机和电脑；
    echo 2. 手机是否允许USB调试；
    echo 3. USB数据线是否支持文件传输；
    echo.
    echo 按回车重新检测...
    pause >nul
    goto loop
)

if !count! GTR 1 (
    echo.
    echo 检测到多台设备！
    echo 请只保留一台手机连接。
    echo.
    echo 按回车重新检测...
    pause >nul
    goto loop
)

echo.
echo 已检测到设备，正在激活无线ADB...
"%ADB_PATH%" tcpip 5555

echo.
echo ========================================
echo 激活完成！
echo 请在【林林远程控制】APP中切换到ADB模式，并继续完成其他设置
echo ========================================
echo.

echo 按回车退出...
pause >nul
exit