我最近更新到了 Android Studio 2.3,现在当我尝试运行这个应用程序时,模拟器不会上线。300秒后会失效。
此外,应用程序一直在经历一个致命的例外错误(OOM) ,我不知道如何修复,或者如果这是模拟器问题的一部分。
非常感谢你的帮助。同样,我在这个程序中的知识是非常有限的,所以如果你的答案可以保持简单,这将是伟大的。
工具-Android-Sdk 管理器- 标签 Sdk 工具- 安装仿真器25.3.1
转到 Sdk 管理器—— > SDKtools —— > 安装模拟器25.3.1
我遇到了和你一样的问题,android 工作室说我已经安装了仿真器25.3.1
我删除了模拟器文件夹(它在 SDK 文件夹中)
然后重新安装仿真器25.3.1 SDK manager —— > SDKtools —— > install the Simulator 25.3.1
这次成功了:)
转到 Run/Debug configuration-> General tab
在“选择 Android 虚拟设备”组合框中选择空白设备
现在每次你运行应用程序时,它都会在已经打开的设备上运行。如果没有运行设备,它将抛出错误
我也有同样的问题,然后我去 AVD 经理和右键点击模拟器,并停止它,我运行的应用程序,这一次它的工作。 这可能是一个暂时的解决方案,但目前是有效的。
Tools-> AVD manager-> 右键单击您正在使用的模拟器-> Stop
现在 Run您的应用程序再次。
Run
注意: 有时候直接关闭模拟器并不能解决上面提到的问题,但是从 AVD 管理器中停止模拟器是可行的。
这个问题太老了,但将来可能对某人有帮助。 在搜索了很多东西之后,他们中的大多数都不适合我。因此,根据我的尝试,这个解决方案对我很有效。简而言之,卸载并在 Android SDK 中安装“ Android SDK 工具”。
这方面的几个步骤如下:-
再次卸载和安装 Android SDK 工具的图像
用了三天,我相信 adb 和模拟器之间存在竞争条件。在一个运行应用程序的请求中,如果没有模拟器已经在运行,你会看到“ Initialization ADB”,然后模拟器选项启动,你会看到“ wait for target to come online”。一个 adb kill-server,或者 kill -9,或者任务管理器中 adb 的“ End Process”将导致 adb 死亡,重新启动,您的 APK 安装完成。在我看来,“ adb kill-server”会导致 adb 死亡,然后在这里重新启动,这的确很奇怪,但这也许是另一个谜。
问题是 ide 和模拟器之间没有链接。
在我们的情况下-我们 机器人的降级版本的应用程序,该 沮丧的想法在模拟器链接。
如果我们安装 Android 25并将项目绑定到它,以及 Android 25上的 AVD 设备——它会链接并应用动态更改。如果我们降级到安卓14和安卓14上的设备-它不会。
二手 Android Studio 2.3。
要玩你可以设置在 Gradle Scripts-build.Gradle (模块: app)中的版本:
android { compileSdkVersion 25 defaultConfig { minSdkVersion 15 targetSdkVersion 15 } }
因此,应用程序不会在 Android 25设备上运行,而是会显示一条消息:
邮件安装失败未能完成会话: -26: 测试新的目标 SDK 15包不支持运行时 但旧的目标 SDK25的权限。。这是可能的 问题可以通过卸载现有版本的 apk 来解决 存在,然后重新安装。 警告: 卸载将删除应用程序数据!
邮件安装失败未能完成会话: -26: 测试新的目标 SDK 15包不支持运行时 但旧的目标 SDK25的权限。。这是可能的 问题可以通过卸载现有版本的 apk 来解决 存在,然后重新安装。
警告: 卸载将删除应用程序数据!
在尝试了所有这些解决方案都没有成功之后,解决我的问题的方法只是简单地将虚拟设备的图形配置从 Auto 改为 Software (先尝试硬件,但没有成功)
如果你在 Mac 上,确保你退出 Docker for Mac。这对我很有效。
在我的案例中,问题似乎在于“ Google API ARM EABI v7a System Image”在 Android Studio 安装期间没有自动安装。
安装映像后,模拟器开始工作。
SDK 管理器的屏幕截图
另一个例子是 Android 应重新安装仿真程序。当您安装了更高版本的 Android Studio,然后为其更新 SDK,并返回到之前的版本时,就会发生这种情况。
工具-Android-SDK Manager-SDK Tools-Android 模拟器- 取消检查,申请,检查,申请
禁用 Docker 应用程序(Mac 用户)。
重新启动模拟器 :
工具-Android-AVD 管理器 (或者在任务管理器中终止 adb 进程)。
我也遇到了这个问题,可能找到了有帮助的解决方案。关键是首先在模拟器中启动 AVD,然后运行你的应用程序。
以下是步骤:
我发现在我的机器上有一个正在运行的 Docker 实例(OSX)阻止了 Android 仿真器的运行(参见 无法运行 AVD)
以前,我的模拟器看起来像是启动了,然后在显示任何设备窗口之前就失败了。
我还必须使用“ kill -9”(根据@MarkDubya)才能让 Android Studio 连接到虚拟设备。
对于使用 KVM 并面临此问题的 Linux 用户,请尝试将 Android 虚拟设备上的 Graphics 选项设置为 Software,而不是 Automatic或 Hardware。正如前面提到的 回答。
Software
Automatic
Hardware
我可以确认这种方法适用于 Arch Linux,Ubuntu 16.04,以及使用 Android Studio 2.3.1 + 版本的带或不带专用显卡的窗口
我正在做笔记本电脑,Windows 8。我解决了这个问题改变模式从电池节省模式到平衡模式。在此之前,一个模拟器不工作,我看到“目标设备上线”。基因运动也没用
我在更新我的机器人工作室时也遇到过类似的问题。它改变了我的 SDK 路径。我只是将它更改为我更新的 SDK 路径,它就工作了。
Android Studio-> 文件-> 设置-> 外观与行为-> 系统设置-> Android SDK
在这里你会发现 Android SDK 的位置,只需点击前面的编辑链接,浏览并从文件浏览器中选择 Android SDK。选择并单击 Apply。
选择 AVD 管理器并启动模拟器。这个解决方案对我很有效。
像 Urupvog 的回答,确保你 没有运行任何其他的虚拟机,比如 VirtualBox。当我重新启动我的电脑,AVD 工作,直到我启动流浪者后端开发(然后它不会启动)。
有关更多信息,请参见 Android 模拟器和虚拟机不能同时运行。
转到终端并键入 android avd。选择您的 AVD 并选择“编辑”。确保你没有看到 No CPU/ABI system image available for this target-它将显示在底部的红色字体。将 target更改为可用的,或者下载 ABI 映像。有时候,如果你在 Android Studio 内部创建了一个 AVD,它并不能保证这个需求。
android avd
No CPU/ABI system image available for this target
target
以上的解决方案对我都不管用,所以我必须删除
C:\Users\your_name\.android\avd
并重建仿真设备
检查你的设备没有未经授权,未经授权的设备在 Android Studio 中回复相同的错误,检查模拟器一旦启动 adb 命令。
$adb 设备
附件设备清单
模拟器 -5554未经授权
如果你有这种方式的模拟器的 Android 工作室正在等待被授权,也许这可以解决问题。
认可装置
这是我在 Windows10的 Android Studio 2.3.3中解决的一个错误
我在 Linux 系统中遇到过同样的问题(AVD 无法上线)。就我而言,我已经解决了这个环境变量:
$ export ANDROID_EMULATOR_USE_SYSTEM_LIBS = 1
这个病例记录在这里: https://developer.android.com/studio/command-line/variables.html#studio_jdk
在 Android Studio 3.x 上,下面的方法对我很管用。
第一步: 打开 AVD 管理器。
第二步: 右击并擦除正在测试的虚拟设备的数据。
最后,我通过在 bash 文件中设置正确的导出路径来解决这个问题:
export ANDROID_HOME=/Users/[username]/Library/Android/sdk
在你的 Android Studio 中转到 AVD 经理。 右击模拟器,然后是 选择擦除数据.再次运行你的应用程序。 模拟器将执行一个干净的启动,然后安装您的 apk,然后您的应用程序将最终运行。
摘要 : < strong > AVD Manager ——-右击仿真器——-擦除数据——-再次运行应用程序
如果问题仍然存在,那么只需回到您的 avd 管理器,卸载模拟器卸载模拟器,然后 增加一个新的模拟器。一旦新的模拟器被添加,在您的 avd 管理器,运行模拟器... 然后运行您的应用程序。 如果模拟器在第一次运行应用程序之前就已经开始运行,那么这种方法会简单得多
下面的步骤对我有用
没有读完所有的答案。无论如何,接受一个不适合我。真正起作用的是将 android 工作室升级到最稳定的版本,然后创建一个新的虚拟设备。我猜我的 nexus5p 虚拟设备和 android 演播室环境不同步了。
解决这个问题很简单:
有时你可能会看到它旁边有一个更新,你只需要让它完成更新
我有这个问题两次,并尝试在这个线程没有结果的一切,我最后修复了它关闭“ BlueStacks”模拟器。
如果在我运行应用程序的时候 BlueStacks (或者其他 Android 模拟器)正在运行,那么默认情况下 Android Studio 会在那里安装应用程序,即使我从未在 AVD Manager 中选择它作为一个设备,那么 Android Studio 会等待一个不正确的设备“上线”。
关闭 BlueStacks (或任何其他 Android 模拟器)为我解决了设备之间的冲突。
我希望这个信息能帮到别人!
在尝试了上面列出的几乎所有解决方案之后,我最终成功地使用“ Google API”映像而不是“ Google Play”映像创建了一个新的虚拟设备。
似乎 Android Studio (使用3.5.1版本)在一段时间后进入了一种奇怪的状态。
文件-> 无效缓存/重新启动-> 无效和重新启动
这个解决方案对我很有效: 工具-> AVD 管理器-> 单击下拉箭头-> 选择 Cold Boot Now
Cold Boot Now
再一次,请等待一段时间,有时你错过了它实际上工作,但你感到非常紧张,不能等待(我是)。
不知道为什么我修复了同样的问题发生在我的 Macbook 上,但是,选择 Nexus5XAPI R 将工作的某种方式。或以下
擦除数据: 工具-> 打开 AVD 管理器并点击 emu“擦除数据”
Cold Boots Now: Tools-> 打开 AVD Manager 并点击 emu“ Cold Boots Now”
从 SDK 卸载和重新安装 Android 模拟器: Tools-> Open SDK Manager-> Android SDK (左侧菜单)-> SDK Tools (中间的主屏幕) ,然后单击“ Android 模拟器”和 APPY,然后再次单击“ Android 模拟器”application 重新安装,所以完成
确保在设备上启用了 USB 调试
根据你使用的 Android 版本,按照以下步骤进行操作:
返回到主 设定菜单,在底部找到 开发商选择。在 Developer 选项菜单中,向下滚动并启用 USB 调试。
如果你还没有解出来的话,班名是用重音字母的。
转到 AVD 经理右键单击您的设备,并选择 清除数据和 冷启动。 对我来说,它工作正常。
当我第一次尝试在带有 M1芯片的新 MacBook Pro 上运行 Android 应用程序时,我也遇到了同样的问题。到目前为止,所有建议的选择都不适合我。
我按照 作者: Elye中的说明(参见 作者:@AndrewPK)建议下载 Android S 系统映像的旧版本。在博客文章中建议的目标位置是错误的,但是(在找到正确的位置之后,它们不难猜测)我注意到 Stack Overflow 答案 是中的那些是正确的:
Google Play ARM 64 v8a System Image (修订版: 2) GoogleAPI ARM 64v8a 系统映像(修订版: 2) [ T ]您希望将解压缩图像放入的目录可能类似于 ~/Library/Android/sdk/system-images/android-S。 例如,GooglePlay 图像的路径是 ~/Library/Android/sdk/system-images/android-S/google_apis_playstore/arm64-v8a
Google Play ARM 64 v8a System Image (修订版: 2)
GoogleAPI ARM 64v8a 系统映像(修订版: 2)
[ T ]您希望将解压缩图像放入的目录可能类似于 ~/Library/Android/sdk/system-images/android-S。
~/Library/Android/sdk/system-images/android-S
例如,GooglePlay 图像的路径是 ~/Library/Android/sdk/system-images/android-S/google_apis_playstore/arm64-v8a
~/Library/Android/sdk/system-images/android-S/google_apis_playstore/arm64-v8a
对于那些在设备而不是模拟器上遇到这个问题的人,确保你的应用程序没有被设置为设备所有者。
在我的例子中(我使用安装了 playstore 的像素3仿真器)
这对我的 Android 工作室4 + 和 Mac 操作系统
所有的答案都是一样的,但是我发现,当 targetSdkVersion与模拟器的版本不同时,有时会出现这种错误。一旦我增加了版本,问题就停止了。
targetSdkVersion
如果你的设备(不是模拟器)有问题,你必须删除活动管理员使用这个:
adb shell dpm remove-active-admin package.name/MyDeviceAdminReceiver
为了再次设置设备管理,您可以使用以下命令:
adb shell dpm set-device-owner package.name/MyDeviceAdminReceiver
(不要忘记在环境变量中添加 C: Users < current user > AppData Local Android Sdk Platform-tools path)
我去了“ AndroidManifest.xml”
变了
Android: 导出-> false 到 没错并解决错误。