Android Studio | Waiting for target device to come online

打印 上一主题 下一主题

主题 1745|帖子 1745|积分 5235

先把办理办法贴在前面:
办理办法

   open AVD manager - > Edit device - > Show Advanced Settings - > Boot option - > select Cold Boot instead of Quick boot.
  图解:
在DeviceManager里按照步调进入Edit

进入ShowAdvancedSettings

往下滑,在Boot option里选择Cold boot

本办法来自于(Android Studio guest hasn’t come online in 7 seconds retrying-详细内容 - 黄兵的个人博客)
过程:

碰到问题

最近想启动一个新项目,开始时想启动一下。等了一会发现还没启动好,发现不停卡在Waiting for target device to come online

办法1:Cold Boot

一开始觉得太久没有用这个虚拟设备了,可能某些地方卡住了,就在Device Manager里实验Cold Boot,重新启动试试

结果不行
办法2:删除*.lock文件

之前也碰到过这个问题,不外都是项目之中碰到的。于是想试试用之前的办法办理:
删除 C:\Users\用户名.android\avd\相应虚拟设备\ 找到 *lock 文件(我这里是multiinstance.lock),重新启动(此处得先关掉Android Studio)

求助Deepseek

后来发现不行,就试着问了一下Deepseek,给出的办理方案:
1. 删除.lock文件并冷启动(Cold Boot)


  • 关闭当前模拟器。
  • 前去AVD的存储目次(如C:\Users[用户名].android\avd[模拟器名称].avd),删除所有.lock文件210。
  • 在AVD Manager中选择该模拟器,点击Cold Boot Now强制冷启动29。
  • 启动完成后,重新运行应用。
2. 检查AVD配置与体系镜像


  • 在AVD Manager中新建或编辑模拟器,确保选择与项目兼容的API版本。
  • 优先选择x86_64架构镜像(性能更好且兼容性高)7。
3. 强制重启ADB服务


  • 打开终端,进入SDK的platform-tools目次。
  • 依次执行下令:
    1. adb kill-server  
    2. adb start-server  
    复制代码
  • 重新连接模拟器或物理设备56。
  • 适用场景:ADB服务因异常中断导致设备无法识别。
4. 擦除数据(Wipe Data)或重建AVD


  • 方法一:在AVD Manager中选择Wipe Data,清除模拟器的用户数据5。
  • 方法二:直接删除旧AVD,重新创建一个新模拟器(避免残留配置辩论)710。
5. 更新SDK Tools与Platform Tools


  • 打开Android Studio,进入SDK Manager
  • 检查并更新Android SDK Platform-ToolsAndroid Emulator至最新版本56。
  • 重启Android Studio。
查找博客

看了Deepseek的回答,多少感觉有点不太靠谱,因为我前几天是可以正常启动的。最后还得求助一下百度,找到了一些博客。有一些办法跟我一开始想的一样,不外不行。最终查找到了一篇博客,办理办法就在开头。
可能的原因

新手小白不是很懂,查的博客根本都是办理办法,很少说为什么。
这里贴一下Deepseek的回答:
1. 模拟器残留文件或历程未彻底关闭



  • 原因:模拟器异常退出后,残留的 .lock 文件或后台历程会阻止新实例启动。
  • 办理方法

    • 关闭所有模拟器和 Android Studio。
    • 打开任务管理器,竣事所有 qemu-system-* 或 emulator-* 历程5。
    • 前去模拟器存储目次(如 C:\Users[用户名].android\avd[模拟器名称].avd),删除所有 .lock 文件15。
    • 利用 AVD Manager 的 Cold Boot Now 强制冷启动模拟器16。

2. ADB 服务异常或未精确连接



  • 原因:ADB 服务可能因端口辩论、权限问题或缓存错误中断连接35。
  • 办理方法

    • 重启 ADB 服务:在终端中执行 adb kill-server 后,再运行 adb start-server35。
    • 检查设备是否被识别:执行 adb devices,确认模拟器或物理设备出现在列表中。
    • 若利用物理设备,检查 USB 调试是否开启,或实验更换数据线8。

3. AVD 配置或体系镜像不兼容



  • 原因

    • 模拟器的 API 版本与项目要求的 SDK 不匹配28。
    • 未选择精确的 CPU 架构(如 x86_64)68。
    • 体系镜像文件破坏或未完备下载47。

  • 办理方法

    • 新建 AVD 时选择与项目兼容的 API 版本,并优先利用 x86_64 架构镜像68。
    • 在 SDK Manager 中检查体系镜像是否完备,重新下载或修复镜像(点击赤色感叹号图标)4。
    • 实验 Wipe Data(擦除数据)或直接删除旧 AVD 后重建8。

4. Android Studio 或 SDK Tools 版本问题



  • 原因:某些 Android Studio 版本存在兼容性 Bug(如用户反馈的 4.2.2 版本问题)27。
  • 办理方法

    • 更新 Android EmulatorSDK Platform-Tools 至最新版本47。
    • 若问题持续,实验降级 Android Studio 至稳定版本(如 4.1)2。

5. 体系环境或资源限制



  • 原因

    • Linux 体系中库文件缺失或版本辩论(如 libstdc++)7。
    • 体系内存不敷或防火墙阻止模拟器网络连接78。

  • 办理方法

    • Linux 用户:更新或链接体系库(如执行 sudo apt-get install lib64stdc++6:i386 并更换 SDK 中的库文件)7。
    • 关闭占用内存过多的程序,确保模拟器有足够资源启动。
    • 检查防火墙设置,答应模拟器通过网络8。

6. 特定 Android 版本的已知 Bug



  • 原因:部分 Android 版本(如 API 23/Android 6.0)存在模拟器启动 Bug8。
  • 办理方法

    • 避免利用问题版本,改用 API 22、24 或更高版本8。
    • 先手动启动模拟器,再运行项目8。

7. 其他建议



  • 利用物理设备调试:若模拟器问题无法办理,优先通过 USB 连接真实设备调试8。
  • 第三方模拟器:实验 Genymotion 或 BlueStacks 替代官方 AVD27。

百度AI还给出了别的两个办法:
8. ‌模拟器问题

如果利用的是模拟器,可能是模拟器本身的问题。可以实验以下方法办理:


  • 删除模拟器安装路径下的两个文件(默认在C:\Users\用户名.android\avd下),然后重新启动模拟器‌。
  • 清除模拟器的数据并规复出厂设置,然后重新启动模拟器‌4。
9. ‌环境变量设置



  • 偶然可以通过设置环境变量来办理端口辩论问题。可以定义一个五位数的端标语作为ANDROID_ADB_SERVER_PORT的值,例如设置为10000到65535之间的任意值‌12。

AI的回答不知道靠不靠谱,如果不能办理的小伙伴可以试试。
如果有增补方案欢迎在评论区讨论~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户云卷云舒

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表