@echo off chcp 65001 >nul echo ======================================== echo 开机自启动完整测试 echo ======================================== echo. REM 设置 ADB 路径 set ADB_PATH=D:\NVPACK\android-sdk-windows\platform-tools set PATH=%ADB_PATH%;%PATH% set PACKAGE_NAME=com.YuyeTech.HeartRate echo 此脚本将: echo 1. 停止应用 echo 2. 清空日志 echo 3. 模拟开机广播 echo 4. 检查应用是否自动启动 echo 5. 显示相关日志 echo. pause echo. echo [步骤 1/5] 停止应用... adb shell am force-stop %PACKAGE_NAME% echo ✅ 应用已停止 echo. echo [步骤 2/5] 清空日志... adb logcat -c echo ✅ 日志已清空 echo. echo [步骤 3/5] 模拟开机广播... echo 正在发送 BOOT_COMPLETED 广播... adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -p %PACKAGE_NAME% echo ✅ 广播已发送 echo. echo [步骤 4/5] 等待应用启动(5秒)... timeout /t 5 /nobreak >nul echo. echo [步骤 5/5] 检查应用状态... echo. echo --- 应用进程状态 --- adb shell ps | findstr %PACKAGE_NAME% if errorlevel 1 ( echo ❌ 应用进程未运行 set APP_RUNNING=0 ) else ( echo ✅ 应用进程正在运行 set APP_RUNNING=1 ) echo. echo --- Activity 状态 --- adb shell dumpsys activity activities | findstr "PandoraEntry" if errorlevel 1 ( echo ❌ 主 Activity 未启动 ) else ( echo ✅ 主 Activity 已启动 ) echo. echo --- BootReceiver 日志 --- adb logcat -d | findstr "BootReceiver" echo. echo --- BootLauncher 日志 --- adb logcat -d | findstr "BootLauncher" echo. echo --- Kiosk 初始化日志 --- adb logcat -d | findstr "MyApplication KioskHelper KioskManager" echo. echo ======================================== echo 测试结果 echo ======================================== echo. if %APP_RUNNING%==1 ( echo ✅ 开机自启动功能正常! echo. echo 应用已成功响应开机广播并自动启动 echo. ) else ( echo ❌ 开机自启动功能异常! echo. echo 可能的原因: echo 1. BootReceiver 未正确注册 echo 2. 系统自启动权限未开启 echo 3. 电池优化限制 echo 4. 设备厂商限制 echo. echo 建议操作: echo 1. 运行"检测开机自启动.bat"查看详细信息 echo 2. 运行"设置开机自启动权限.bat"配置权限 echo 3. 手动在设备上开启自启动权限 echo 4. 重启设备进行真实测试 echo. ) echo 💡 真实开机测试: echo 1. 在设备上手动设置自启动权限 echo 2. 重启设备 echo 3. 观察应用是否自动启动 echo 4. 运行"启动应用并查看日志.bat"查看启动日志 echo. pause