为什么Android AVD需要很长时间才能启动?

时间:2010-08-06 16:44:13

标签: android-emulator

我在阅读了Google开发者网站的教程后,得到了Hello,Android程序,但AVD加载需要很长时间!另外,在Eclipse底部的控制台部分,其中两行是用红色写的,我猜是坏的。 AVD开始运行实际程序大约需要一分钟。这就是控制台打印输出的样子:

[2010-08-06 12:32:38 - HelloAndroid] ------------------------------
[2010-08-06 12:32:38 - HelloAndroid] Android Launch!
[2010-08-06 12:32:38 - HelloAndroid] adb is running normally.
[2010-08-06 12:32:38 - HelloAndroid] Performing com.example.helloandroid.HelloAndroid activity launch
[2010-08-06 12:32:38 - HelloAndroid] Automatic Target Mode: Preferred AVD 'my_avd' is not available. Launching new emulator.
[2010-08-06 12:32:38 - HelloAndroid] Launching a new emulator with Virtual Device 'my_avd'
[2010-08-06 12:32:54 - HelloAndroid] New emulator found: emulator-5554
[2010-08-06 12:32:54 - HelloAndroid] Waiting for HOME ('android.process.acore') to be launched...
[2010-08-06 12:34:05 - HelloAndroid] WARNING: Application does not specify an API level requirement!
[2010-08-06 12:34:05 - HelloAndroid] Device API version is 8 (Android 2.2)
[2010-08-06 12:34:05 - HelloAndroid] HOME is up on device 'emulator-5554'
[2010-08-06 12:34:05 - HelloAndroid] Uploading HelloAndroid.apk onto device 'emulator-5554'
[2010-08-06 12:34:05 - HelloAndroid] Installing HelloAndroid.apk...
[2010-08-06 12:35:07 - HelloAndroid] Success!
[2010-08-06 12:35:07 - HelloAndroid] Starting activity com.example.helloandroid.HelloAndroid on device 
[2010-08-06 12:35:11 - HelloAndroid] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.helloandroid/.HelloAndroid }

现在我看了几次,我开始在12:32运行程序,最后我的程序在12:35在屏幕上显示,所以这是3分钟。这是我需要等待的正常时间吗?如果不是,如何让它更快?

2 个答案:

答案 0 :(得分:18)

AVD与Windows PC完全不同。 Windows通常运行在32位或64位。在Intel或AMD处理器上。 处理器的说明书用x86编写。 二进制和机器代码的工作/运行方式与每个arcitechture不同。 您上传到设备上的android软件包必须在AVD架构上编译。模拟器必须通过电子化ARM架构,因此发送到CPU的指令是不同的。 这需要时间来编译此代码。 希望这能解决它。 有问题吗?

答案 1 :(得分:0)

在这里运行Ubuntu 10.10 64bit。我使用的是AMD现象2.5Ghz w / 8GB内存。对于2.2启动时间需要40秒,但操作系统响应有点迟缓。对于1.5,启动只需要大约30秒,响应很快。

此外,在您启动AVD之后,希望您在Eclipse中的运行会话之间保持打开和运行!每次重新运行应用程序时,都不应该关闭它并重新启动AVD。只需保持AVD打开,Eclipse将重新加载您的应用程序。 (看看控制台输出,看看您的应用何时完成重新加载)