等待目标设备上线

时间:2017-03-15 16:56:56

标签: android timeout emulation

我最近更新到Android Studio 2.3,现在当我尝试运行该应用程序时,模拟器无法联机。它在300秒后超时。

此外,该应用程序遇到了致命错误(OOM),我不知道如何修复它,或者如果这是模拟器问题的一部分。

非常感谢任何帮助。再一次,我对该计划的了解非常有限,所以如果你的答案可以保持简单,那就太棒了。

39 个答案:

答案 0 :(得分:48)

以下在Android Studio 3.x上为我工作。

第1步: 打开AVD Manager。

enter image description here

第2步: 右键单击并擦除您正在测试的虚拟设备的数据。

enter image description here

答案 1 :(得分:48)

如果您使用的是Mac,请确保退出Docker for Mac。这对我有用。

答案 2 :(得分:25)

我也遇到了同样的问题,然后我去了AVD管理器并右键单击模拟器并停止了它,我再次运行应用程序,这次它运行了。 它可能是一个临时解决方案,但暂时有效。

  

AVD经理 - >右键单击您正在使用的模拟器 - >停止

现在再次<body> <input class="fieldsRt" id="date" name="date"> </body>您的申请。

注意:有时直接关闭模拟器不能解决上述问题,但如上所述从AVD管理器停止它是有效的。

答案 3 :(得分:22)

这三天,我相信adb和模拟器之间存在竞争条件。在运行应用程序的请求中,没有运行模拟器,您会看到&#34;正在初始化ADB&#34;,然后是模拟器选项,它会启动,然后您将等待目标上线&#34; 。 adb kill-server,或kill -9,或&#34; End Process&#34; adb与任务管理器将导致adb死亡,重新启动,你的APK安装,你很高兴。一个&#34; adb kill-server&#34;对我来说似乎很时髦。导致adb死亡然后重新启动,但这可能是另一个谜。

答案 4 :(得分:15)

在尝试所有这些解决方案但未成功之后,解决我的问题的方法只是将虚拟设备的图形配置从Auto更改为Software(首先尝试使用硬件但没有成功)

答案 5 :(得分:14)

  1. 另一个案例是Android 应该重新安装模拟器。当您安装更高版本的Android Studio,然后为其更新SDK,然后返回上一个版本时,就会发生这种情况。

      

    工具 - Android - SDK管理器 - SDK工具 - Android模拟器 -   取消选中,申请,检查,申请

  2. 禁用Docker 应用程序(Mac用户)。

  3. 重新启动模拟器

      

    工具 - Android - AVD Manager   (或杀死任务管理器中的adb进程)。

答案 6 :(得分:9)

转到Android Studio中的 AVD Manager 右键单击您的模拟器,然后选择擦除数据。然后运行您的应用再次。 模拟器将执行干净启动,然后安装您的apk,然后您的应用程序将最终运行。

摘要 AVD Manager ---右击模拟器----擦除数据----再次运行应用程序

如果问题仍然存在,那么只需返回您的avd管理员,卸载模拟器,然后添加新的模拟器。一旦添加了新的模拟器,就在您的avd中经理,运行模拟器...然后运行您的应用程序。 如果您在第一次运行应用程序之前已经开始运行模拟器,那么它就会简单得多

答案 7 :(得分:6)

此解决方案适用于我: 工具-> AVD管理器->单击下拉箭头->选择Cold Boot Now

enter image description here

enter image description here

答案 8 :(得分:5)

以下步骤为我工作

  1. 关闭正在运行的模拟器
  2. 转到AVD Manager
  3. 选择可用的模拟器
  4. 在该操作标签(最后一个)中,点击下拉箭头&amp;现在选择COLD BOOT
  5. 最后运行您的应用程序

答案 9 :(得分:3)

似乎在我的情况下,问题在于&#34; Google API ARM EABI v7a系统映像&#34;在Android Studio安装过程中没有自动安装。

安装图像后,模拟器开始工作。

Screenshot of the SDK manager

答案 10 :(得分:1)

转到AVD 管理器,右键单击您的设备,然后选择擦除数据立即冷启动。 对我来说它工作正常。

答案 11 :(得分:1)

检查您是否有未经授权的未经授权的未经授权的设备在Android Studio中回复相同的错误,请使用adb命令检查模拟器是否已启用。

$ adb devices

附加设备列表

emulator-5554未经授权

如果你有这种模拟器,Android Studio正在等待授权,也许这可以解决问题。

Authorized Devices

这是我在Windows 10中使用Android Studio 2.3.3解决的错误

答案 12 :(得分:1)

一段时间后,似乎Android Studio(使用3.5.1版)进入了一种奇怪的状态。这对我有用。

  

文件->使缓存无效/重新启动->使并重新启动

答案 13 :(得分:1)

我发现在我的机器上运行Docker实例(OSX)阻止了Android模拟器的运行(参见Android Studio Unable to run AVD

以前,我的模拟器似乎会启动,然后在显示任何设备窗口之前失败。

我还必须使用'kill -9'(根据@MarkDubya)让Android Studio连接到虚拟设备。

答案 14 :(得分:1)

urupvog's answer一样,请确保您未运行任何其他虚拟机,如VirtualBox 。当我重新启动计算机时,A​​VD一直工作,直到我开始使用Vagrant进行后端开发(然后它就不会启动)。

有关详细信息,请参阅Android emulator and virtualbox cannot run at same time

答案 15 :(得分:0)

尝试了上面列出的几乎所有解决方案之后,最终对我有用的是使用“ Google API”图像而不是“ Google Play”图像创建新的虚拟设备。

答案 16 :(得分:0)

对于那些在设备而非模拟器上遇到此问题的人,请确保您的应用未设置为设备所有者。

答案 17 :(得分:0)

没有阅读所有答案。无论如何,接受一个对我没有用。所做的是将android studio升级到最后一个稳定版本,然后创建了一个新的虚拟设备。我猜我的nexus 5p虚拟设备与android studio环境不同步。

答案 18 :(得分:0)

解决此问题很简单:

  • 转到SDK工具> SDK工具
  • 检查Android模拟器,然后单击“应用”

有时您可能会看到旁边有一个更新,您只需要让它完成更新即可

答案 19 :(得分:0)

我两次遇到这个问题,并尝试了该线程中的所有操作,但没有结果,我最终修复了该问题,并关闭了“ BlueStacks”模拟器。

如果在我运行应用程序时BlueStacks(可能还有其他的android仿真器)正在运行,则默认情况下,即使没有在AVD Manager中将其选作设备,Android Studio也会在其中安装该应用程序,那么Android Studio会等待不正确的设备“上线”。

enter image description here

关闭BlueStacks(或其他任何Android模拟器)为我解决了设备之间的冲突。

我希望此信息对某人有所帮助!

答案 20 :(得分:0)

可能如果你还没有解决它......类名使用重音字母......

答案 21 :(得分:0)

转到终端并输入android avd。选择您的AVD并选择&#34;编辑&#34;。确保您没有看到No CPU/ABI system image available for this target - 它将在底部以红色字体显示。将target更改为可用的版本或下载ABI图像。有时,如果您在Android Studio中创建AVD,则无法确保此要求。

AVD error

答案 22 :(得分:0)

当我第一次尝试在带有 M1 芯片的新 MacBook Pro 上运行 Android 应用程序时,我遇到了同样的问题。到目前为止,所有建议的选项都不适合我。

我按照 this Medium post by Elye 中的说明进行操作,其中(指 this Stack Overflow answer by @AndrewPK)建议下载旧版本的 Android S 系统映像。博客文章中建议的目标位置是错误的,但是(在找到正确的位置后,它们不难猜测)我注意到 Stack Overflow 答案中的位置正确的:

<块引用>

Google Play ARM 64 v8a System Image (revision: 2)

Google APIs ARM 64 v8a System Image (revision: 2)

[T]您想要放置解压图像的目录可能类似于 ~/Library/Android/sdk/system-images/android-S

例如,Google Play 图片的路径是 ~/Library/Android/sdk/system-images/android-S/google_apis_playstore/arm64-v8a

答案 23 :(得分:0)

再一次,请等待一段时间,有时您会错过它确实有效的机会,但是您感到压力很大,迫不及待(我当时是)。

不知道为什么我要修复Macbook上的相同问题,但是,选择Nexus 5X API R会以某种方式起作用。或以下

  1. 擦除数据:工具->打开AVD管理器,然后单击▼emu“擦除数据”

  2. 立即启动冷靴:工具->打开AVD Manager,然后单击▼emu“立即启动冷靴”

  3. 从SDK卸载并重新安装Android Emulator:工具->打开SDK Manager-> Android SDK(左侧菜单)-> SDK工具(在主屏幕中间),然后单击“ Android Emulator”并应用,然后再次单击“ Android Emulator”申请重新安装,因此完成

答案 24 :(得分:0)

最后,我通过在bash文件中设置正确的导出路径来解决这个问题:

export ANDROID_HOME=/Users/[username]/Library/Android/sdk

答案 25 :(得分:0)

我在Linux系统中遇到了同样的问题(AVD没有联机)。就我而言,我已经解决了它设置这个环境变量:

$ export ANDROID_EMULATOR_USE_SYSTEM_LIBS = 1

此案例记录在此处:https://developer.android.com/studio/command-line/variables.html#studio_jdk

答案 26 :(得分:0)

以上解决方案都不适合我,所以我不得不擦除

的内容
C:\Users\your_name\.android\avd

并重新创建模拟设备

答案 27 :(得分:0)

我更新了我的android工作室时遇到了类似的问题。不知怎的,它改变了我的SDK路径。我刚刚将其更改为我更新的SDK路径并且它有效。

Android Studio - &gt;档案 - &gt;设置 - &gt;外观&amp;行为 - &gt;系统设置 - &gt; Android SDK

在这里您可以找到Android SDK位置,只需点击前面的编辑​​链接,然后从文件浏览器中浏览并选择Android SDK。选择并单击“应用”。

选择AVD管理器并启动模拟器。这个解决方案对我有用。

答案 28 :(得分:0)

我正在使用笔记本电脑,Windows 8.我将此问题更改模式从省电模式解决为平衡模式。在此之前,模拟器不起作用,我看到“目标设备上线”。也没用Genymotion

答案 29 :(得分:0)

对于使用KVM且遇到此问题的Linux用户,请尝试将Android虚拟设备上的“图形”选项设置为Software,而不是AutomaticHardware。正如前面提到的answer

我可以确认该方法适用于Arch Linux,Ubuntu 16.04,以及使用或不使用Android Studio版本2.3.1+的专有显卡的窗口

答案 30 :(得分:0)

我也遇到了这个问题,可能找到了可能有用的解决方案。关键是首先在模拟器中启动AVD然后运行您的应用程序。

以下是步骤:

  1. 在您的虚拟设备屏幕中,选择您刚刚创建的设备,然后在模拟器中单击启动此AVD
  2. 启动模拟器后,单击“项目”窗口中的应用程序模块,然后选择“运行”→“运行”
  3. 在“选择部署目标”窗口中,选择模拟器,然后单击“确定”。

答案 31 :(得分:0)

问题是ide和模拟器之间没有链接。

在我们的案例中 - 我们降低了应用的Android版本,在模拟器链接中沮丧的想法

如果我们安装Android 25并将项目绑定到它,以及Android 25上的AVD设备 - 它会动态链接和apllies更改。如果我们降级到Android 14和Android 14上的设备 - 它没有。

二手Android Studio 2.3。

要使用您可以在Gradle脚本中设置的版本 - build.gradle(模块:app):

android {
  compileSdkVersion 25
  defaultConfig {
    minSdkVersion 15
    targetSdkVersion 15
  }
}

因此,应用不会在Android 25设备上运行并显示消息:

  

安装失败,显示消息无法完成会话:-26:   包ru.asv.test新目标SDK 15不支持运行时   权限,但旧的目标SDK 25呢..有可能这样   通过卸载现有版本的apk来解决问题   存在,然后重新安装。

     

警告:卸载将删除应用程序数据!

答案 32 :(得分:0)

对我有用的是在AVD Manager中“擦除用户数据”/创建新设备。

答案 33 :(得分:0)

问题太旧了,但将来可能对某人有所帮助。 在搜索了很多东西之后,大部分都不适合我。所以,按照我的尝试这个解决方案对我有用。简而言之,卸载并安装&#34; Android SDK工具&#34;在Android SDK中。

以下几个步骤: -

  1. 转到&#34; SDK Manager&#34;在Android Studio中
  2. 转到&#34; SDK工具&#34;标签
  3. 卸载&#34; Android SDK工具&#34; (意味着删除检查(取消选中)&#34; Android SDK工具&#34;然后应用然后确定)
  4. 关闭并重新启动Android Studio
  5. 安装&#34; Android SDK工具&#34; (意味着提前检查&#34; Android SDK工具&#34;然后应用然后确定)
  6. Image of Uninstall and Install Android SDK Tools again

答案 34 :(得分:0)

转到运行/调试配置 - &gt;常规标签

在首选Android虚拟设备组合框中选择空白设备

现在每次运行应用程序时,它都会在已打开的设备上运行。如果没有设备正在运行,则会抛出错误

答案 35 :(得分:0)

我遇到了和你一样的问题,android studio说我已经安装了Emulator 25.3.1

我删除了Emulator文件夹(它在SDK文件夹中)

然后重新安装Emulator 25.3.1 Sdk经理 - &gt; SDKtools - &gt;安装模拟器25.3.1

这一次有效:)

答案 36 :(得分:-1)

确保已在设备上启用USB调试


根据您使用的Android版本,请按照以下步骤操作:

  • 在Android 8.0及更高版本上,转到设置> 系统> 关于 电话,然后点击内部编号七次。
  • 在Android 4.2到7.1.2上,转到设置> 关于手机,然后点击 内部版本号七次。

返回主设置菜单,在底部找到开发者选项。在“开发人员选项”菜单中,向下滚动并启用 USB调试

答案 37 :(得分:-2)

工具 - Android - Sdk经理 - 标签Sdk工具 - 安装模拟器25.3.1

答案 38 :(得分:-3)

转到Sdk经理 - &gt; SDKtools - &gt;安装模拟器25.3.1