17

我是第一次尝试 android SDK。我从 HelloAndroid 教程开始。完全遵循每个步骤,但模拟器在没有我的应用程序的情况下启动。日食控制台 说:

[2010-02-23 11:47:55 - HelloAndroid]------------------------------
[2010-02-23 11:47:55 - HelloAndroid]Android Launch!
[2010-02-23 11:47:55 - HelloAndroid]adb is running normally.
[2010-02-23 11:47:55 - HelloAndroid]Performing com.example.helloandroid.HelloAndroid activity launch
[2010-02-23 11:47:55 - HelloAndroid]Automatic Target Mode: Preferred AVD 'my_avd' is not available. Launching new emulator.
[2010-02-23 11:47:55 - HelloAndroid]Launching a new emulator with Virtual Device 'my_avd' [2010-02-23 11:48:09 - HelloAndroid]New emulator found: emulator-5554
[2010-02-23 11:48:09 - HelloAndroid]Waiting for HOME ('android.process.acore') to be launched...

我看到了模拟器,上面有“Android”文本,但没有其他反应。有人可以帮忙吗?谢谢!

4

7 回答 7

18

摘要
(您可以在这些摘要步骤下方查看完整详细信息)。

  1. 将 Android SDK 卸载/重新安装到 C:\ 的文件夹(路径中没有空格)
  2. 重新创建 AVD。
  3. 为新的 Android SDK 文件夹位置设置 PATH 环境变量
  4. 在 Eclipse 中卸载/重新安装 Android ADT 插件。
  5. 在 Eclipse 中配置 Android SDK 位置。
  6. 重新启动(以降低 CPU 利用率)
  7. 从命令行运行模拟器并将其设置为使用所有具有高或“实时”优先级的 CPU。记下您的 CPU 使用率。
  8. 打开 Eclipse 并运行应用程序。

详细信息
我花了两天时间让模拟器运行 HelloAndroid 应用程序。在我的情况下,问题可能是 Android SDK 安装问题和 CPU 性能问题的结合。我认为某些原因导致模拟器运行非常缓慢,使模拟器看起来挂起。我的 PC 是我的 Windows 7 64 位 6GB Intel i7 多核 PC。任务管理器在性能标签上显示我的 PC 上的 8 个 CPU。

我的症状是当屏幕上显示动画的“Android”文本时,模拟器中的 Android 2.2 AVD 似乎挂起。主屏幕永远不会出现。这种情况一遍又一遍地发生。我经常会等待 30 分钟或 45 分钟,但无济于事。

我的环境:

  • Android SDK 修订版 12
  • 安卓 2.2 AVD
  • Windows 7 64 位
  • 面向 Java 开发人员的 Eclipse IDE Indigo 发行版 内部版本号 20110615-0604
  • Intel Core i7 多核 CPU,6 GB,1.6 GHz

我尝试从命令行启动模拟器,而不在命令提示符下启动 Eclipse,但这没有帮助。模拟器仍然挂起。我注意到任务管理器以 50% 的 CPU 使用率显示我的盒子,这似乎相当高。CPU 0 固定在 100%。

这是修复它的方法。

我卸载了 Android SDK R12 并在 C:\android-sdk 的 C: 根目录下重新安装了它。我之前遇到过问题,因为 Android SDK 位于“C:\Program Files”文件夹;SDK 有一个错误,无法处理路径中的空间。我从 Android SDK 文件夹中运行“uninstall.exe”来进行卸载。卸载时间比安装时间长。

我在 PATH 环境变量中添加了“;C:\android-sdk\tools\;C:\android-sdk\platform-tools\”。

然后我使用 SDK Manager 删除了 AVD 并重新创建了它。

我卸载了 Eclipse 的 ADT 插件,重新启动了 Eclipse,然后重新安装了 ADT 插件,然后关闭了 Eclipse。

我使用新的 Android SDK 路径(窗口 > 首选项 > Android > SDK 位置)重新配置了 Eclipse。

在任务管理器进程选项卡上,我启用了“显示所有用户的进程”。然后我右键单击“emulator-arm.exe *32”,然后单击“Set Affinity...”并注意到模拟器设置为仅使用 CPU 0,因此我将其更改为使用所有 CPU。我还将模拟器设置为“实时”优先级。

观察到 50% 的 CPU 使用率,我重新启动。

重新启动后,我使用命令行启动了模拟器:

emulator @Android22

Android22 是我的 AVD 的名称。我使用任务管理器设置模拟器使用所有 CPU 的亲和力并将优先级设置为高。我的 CPU 使用率现在约为 13%,主要是由于模拟器。模拟器需要大约 3 分钟才能显示主屏幕。耶!

然后我用 HelloAndroid 应用程序打开 Eclipse,该应用程序在模拟器中成功运行。

我已经详细写出了我所做的事情,因为过去两天真的很痛苦。我注意到一些关于这个问题的帖子,很多人似乎没有成功。我执行了几篇文章中提到的步骤,但没有找到一个描述整个过程的地方。

祝你好运。我希望这些信息对某人有所帮助。

于 2011-08-23T21:08:27.550 回答
7

它正在加载。您可以从 DDMS 或adb shell logcat.

加载模拟器需要一些时间,但请记住,更新代码时不需要重新启动它。您只需Run as...在 eclipse 中点击,它就会负责上传和重新安装到 emu 中。

另请记住,您可以使用手机而不是模拟器。当我正在使用的电脑速度太慢时,我通常会使用手机。

祝安卓开发顺利!

于 2010-02-23T11:18:39.147 回答
7

也许只有我一个人,但我花了一段时间才弄清楚我一直在阅读的“LogCat”是什么。

如果您使用的是 Eclipse,请执行“窗口/显示视图/其他”。然后在“显示视图”框中输入“LogCat”,就会出现“Android->LogCat”。选择该选项,您现在将拥有一个显示输出信息的 LogCat 选项卡。您可以使用右上角的“VDIWE”按钮控制显示的信息级别。

于 2010-02-24T15:11:53.343 回答
1

应用上述解决方案后,尝试编辑您的 AVD,将“最大 VM 应用程序堆大小”硬件属性设置为 192 或更高,然后选择 QVGA 皮肤。我遇到了同样的问题,通过这些设置,AVD 在不到一分钟的时间内加载完毕。

于 2011-11-26T06:38:04.493 回答
1

同意楼上的天才,

有同样的问题(卡在加载“家”),让我想起了我遇到的下载问题(卡在 99% 并且没有进一步 -> (是的,我是菜鸟,但它仍然让我想起了) ) 再加上对任何防火墙和病毒防护软件的根深蒂固的仇恨,让我产生了一种高能量的狂暴怒火,摧毁了一切与“保护”这个词只有一丝相似之处的东西

--> 模拟器在那之后工作得很好!

  • 仍然需要 6-7 分钟来加载模拟器,但是“logcat”可以帮助打发时间:)
于 2012-01-29T12:39:46.133 回答
0

似乎首选的解决方案是购买 Android 开发者网站上宣传的“Android Dev Phones”之一。

差不多两年后,模拟器问题仍然相同。在带有最新插件的最新 Eclipse 中,模拟器崩溃后,CPU 使用率为 30%,被模拟器中的夸张动画消耗。

Eclipse 插件有一个日志视图 LogCat,其中包含将输出保存到文件的选项。该选项会生成一个长度为 0 的文件,其中所有条目都被选中。

这不是软件。这是另外一回事。

于 2011-12-04T12:02:13.343 回答
0

对于那些由于较新的问题而遇到此线程的人,请允许我提供以下内容。希望它可以为人们节省几天的生产力损失和头发拉扯。

Google SDK(工具文件夹内容)的最后一个工作版本是 22.3 版,但旧的工作版本不再在 XML 文件中(https://dl-ssl.google.com/android/repository/repository-8。 xml ),因此您在 GUI 中没有明确的降级路径。

此问题导致我测试的 19 之前的所有“英特尔”API 版本的 OP 描述的问题,以及英特尔 API-19 的“浮点异常”。请注意,仿真器的 Arm 版本仍然可以运行,但如果使用 Intel 加速,则运行速度会慢得多。

该问题记录在此线程中,直到尝试 API-19 才发现,因此“浮点”错误提供了 google-search 匹配:

https://code.google.com/p/android/issues/detail?id=66786

一种解决方案是 genymotion 的 Virtual Box 实现,尽管它需要一个相当新的 glibc 版本,但在 Debian stable 或 CentOS 中还没有。(我刚刚花了一天时间安装 OpenSUSE,所以我可以在找到上面的修复之前“重新开始工作”)。

最快的解决方案是将“工具”(在“android-sdks”文件夹中)重命名为“Broken-tools”,然后下载旧版本,上面的线程中的某个人位于(不知何故): http://dl .google.com/android/android-sdk_r22.3-linux.tgz http://dl.google.com/android/android-sdk_r22.3-windows.zip

打开 tgz 后,您会发现一个填充的“工具”文件夹,可以将其复制到您的“android-sdks”文件夹中,您将旧版本重命名为“Broken-Tools”,如上。

如果这些链接(指向被宣传为“稳定”的非 alpha 版本)应该消失,请注意其他副本存在于其他非官方位置,(无疑是其他“沮丧”的开发人员发布的,试图帮助他们的同伴)。

感谢 Macarse 将我指向“adb shell logcat”,它使我能够找到在 19 之前的 API 中发生的“崩溃循环”,从而创建了以“SSLCertificateSocketFactory”为中心的“Android Splash Screen Forever”行为错误。

于 2014-04-02T02:09:51.653 回答