Android应用卡在‘Launching on Devices’或‘device DEVICEID not found’问题求助
Android应用卡在"Launching on Devices"及设备超时问题解决方案
针对你遇到的应用启动卡顿、device 'DEVICEID' not found报错,以及ddmlib获取设备属性超时的问题,结合Ubuntu 24.04 + Android 14(One UI 6.1)的环境,给出以下针对性解决步骤:
1. 匹配ADB与设备版本兼容性
- 终端执行
adb version查看当前ADB版本,Android 14要求ADB版本至少34.0.0以上 - 打开Android Studio → SDK Manager → SDK Tools,更新Platform Tools到最新稳定版;若最新版仍有问题,可尝试降级到34.0.5版本(部分One UI 6.1设备与最新ADB存在兼容性bug)
2. 延长ADB超时时间
- 在Android Studio中调整:
File → Settings → Build, Execution, Deployment → Debugger → Android Debugger,将ADB connection timeout (ms)从默认5000修改为15000或更高 - 或通过终端临时设置环境变量:
设置后重启Android Studio生效export ADB_TIMEOUT=15000
3. 排查USB连接问题
- 更换原装USB数据线(避免使用仅充电的线缆),切换到USB 2.0端口(Ubuntu 24.04的USB 3.0/3.1端口可能对部分Android设备存在兼容性问题)
- 在手机开发者选项中,将
选择USB配置设置为文件传输(MTP)或PTP,不要选“仅充电”
4. 调整设备USB调试权限设置
- 打开手机开发者选项,开启USB调试(安全设置)(One UI中可能名为“允许通过USB调试修改权限或模拟点击”)
- 关闭“USB调试自动断开”等可能中断连接的选项,重新授权USB调试
5. 重置ADB连接并修复Ubuntu权限
- 终端执行以下命令重置ADB(用sudo避免Ubuntu权限限制):
adb kill-server sudo adb start-server adb devices - 检查并修复udev规则:
- 执行
lsusb查看设备厂商ID(三星设备通常为04e8) - 创建或编辑
/etc/udev/rules.d/51-android.rules文件,添加:SUBSYSTEM=="usb", ATTR{idVendor}=="你的厂商ID", MODE="0666", GROUP="plugdev" - 重载规则并触发生效:
sudo udevadm control --reload-rules sudo udevadm trigger - 将当前用户加入plugdev组:
sudo usermod -aG plugdev $USER
- 执行
6. 绕开Android Studio直接用ADB启动应用
- 若以上步骤无效,尝试直接通过命令行安装启动,排除IDE层面问题:
# 替换为你的APK路径 adb install -r app/build/outputs/apk/debug/app-debug.apk # 替换为你的应用包名和主Activity路径 adb shell am start -n com.your.package/com.your.package.MainActivity
如果命令行能正常启动应用,说明问题出在Android Studio的配置或ddmlib组件上,可尝试重新安装Android Studio或切换到IntelliJ IDEA测试。
内容的提问来源于stack exchange,提问作者Twistios_Player
相关产品推荐
相关产品推荐

