Android 模拟器在启动时挂起?

问题描述 投票:0回答:7

我一直在修改/编辑 Android 平台的部分内容,但在尝试测试我的编辑时遇到了问题。对平台源代码进行更改后,我能够成功编译源代码 - 从而创建 system.img、ramdisk.img 和 userdata.img。

当我在模拟器中测试这个时,模拟器只是挂在“ANDROID_”屏幕上,下划线闪烁,但似乎从未加载。有什么建议吗?

我用来运行模拟器的命令如下:

./emulator -system $HOME/android/platform/out/target/product/generic/system.img -ramdisk $HOME/android/platform/out/target/product/generic/ramdisk.img -data $HOME/android/platform/out/target/product/generic/userdata.img

谢谢,
克里斯

android testing android-emulator
7个回答
10
投票

我遇到了这个问题,并通过删除模拟器并创建一个新模拟器来解决它。 在日食中:

  1. 菜单窗口 -> Android SVK 和 AVD 管理器
  2. 选择虚拟设备(应该已经选择)
  3. 选择出现问题的模拟器
  4. 编辑以查看设置并记住它们。
  5. 删除模拟器。
  6. 创建一个与旧的相同的新的。
  7. 使用开始按钮从此处启动模拟器。

我这样做后大约 30 秒就开始了。

模拟器通常会在 2-3 分钟内启动。然后它神秘地停止工作了。我看了 30 分钟的开机动画才放弃。重新启动我的笔记本电脑没有帮助,这让我认为这是模拟器设置的问题,我偶然发现了这个解决方案。

  • 注意#1:这样做会擦除您的用户数据。
  • 注意#2:正如其他地方提到的,在创建或编辑模拟器时检查快照的“启用”是个好主意,这可以让您下次启动更快。
  • 注#3:我的新模拟器以中文显示。这有点奇怪:)

9
投票

首次启动可能需要一段时间,尤其是在速度较慢的机器上,但请尝试运行 adb logcat 命令来查看日志输出。这将帮助您确定问题可能是什么。

此外,如果您想跳过向模拟器提供所有选项,即 -system 和其他选项,您可以使用构建文件夹中提供的脚本。从开源项目根文件夹运行这些命令:

source build/envsetup.sh
setpaths

第一个将运行 Android 的 envsetup 脚本,该脚本提供了许多有用的命令。第二个设置了Android平台开发所需的所有路径。其中 ANDROID_PRODUCT_OUT 变量通知模拟器在哪里查找构建映像。它被设置为您在上面指定的默认文件夹。运行 setpaths 后,您可以通过在命令行上输入 emulator 来启动模拟器并构建您的版本。


7
投票

尝试在终端中使用

adb logcat
来查看模拟器发生了什么。当我这样做时,我一直注意到

I/ServiceManager(  918): service 'media.audio_flinger' died
I/ServiceManager(  918): service 'media.player' died
I/ServiceManager(  918): service 'media.camera' died
I/ServiceManager(  918): service 'media.audio_policy' died

每 10 秒左右重复一次。我尝试在 AVD 中启用相机,模拟器开始工作。

要启用摄像头,请在终端中输入

android avd
并设置前置和后置摄像头选项。


3
投票

我也有类似的问题。模拟器没有响应,Android Studio 无法部署和运行应用程序。我的解决方案如下: 1.打开AVD管理器 2. 在虚拟设备的右侧菜单中发出命令“停止”和“擦除数据” 3.然后,对虚拟设备进行冷启动 瞧,它又复活了。


1
投票

我通常必须重新启动它才能运行。今天无论如何都不会重新启动。执行 ./adb logcat 始终显示“正在等待设备”。因此,我使用 Eclipse Android SDK 和 AVD Manager / Start...(选项)重新启动了它,取消选中“从快照启动”选项,经过长时间的加载后,模拟器开始工作。


1
投票

我在一台性能较弱的机器(RAM:只有 1 GB)上启动模拟器的技巧是在 WinXP 启动完成后首先启动它。此外,使用分辨率较小的模拟器实例(要模拟的显示像素数较少,例如仅 240x400)也有帮助。


0
投票

我在运行模拟器时遇到了类似的问题,我通过使用命令emulator -avd [your-avd-name]从命令行启动模拟器

解决了这个问题,然后我得到了错误
ERROR | Not enough space to create userdata partition
,我通过清理磁盘解决了这个问题。在我的例子中,根本没有足够的可用内存来创建虚拟设备。

© www.soinside.com 2019 - 2024. All rights reserved.