我正忙着学习如何为Android构建应用程序,我遇到了一个非常棘手的问题。
当我运行我的应用程序时(带有播放图标的绿色圆圈),它会启动Android模拟器(就像它应该的那样),但是一旦模拟器启动,应用程序就无法启动。当我再次单击运行按钮时,它会尝试启动第二个android-emulator。在控制台选项卡中,它提供以下消息:
[2011-11-07 20:57:15 - ScrollView Demo] Android Launch!
[2011-11-07 20:57:15 - ScrollView Demo] adb is running normally.
[2011-11-07 20:57:15 - ScrollView Demo] Performing testapp.scrollviewdemo.MainActivity activity launch
[2011-11-07 20:57:15 - ScrollView Demo] Automatic Target Mode: launching new emulator with compatible AVD 'Android_emulator'
[2011-11-07 20:57:15 - ScrollView Demo] Launching a new emulator with Virtual Device 'Android_emulator'
[2011-11-07 20:57:18 - Emulator] WARNING: Data partition already in use. Changes will not persist!
[2011-11-07 20:57:18 - Emulator] WARNING: SD Card image already in use: C:\Users\Roy\.android\avd\Android_emulator.avd/sdcard.img
[2011-11-07 20:57:18 - Emulator] WARNING: Cache partition already in use. Changes will not persist!
就像Eclipse不能识别它启动的模拟器一样...... 奇怪的是,有时它确实识别它,但大多数时候它没有。
如果它有任何区别:我在Win7 Home Premium 64bit上使用ADT 15.0.0运行Eclipse IDE for Java Developers(Indigo Service Release 1)
答案 0 :(得分:31)
如果模拟器已启动,则可能意味着adb正在运行。在Windows上不确定,但在mac / linux上我做了以下几点:
adb kill-server
sudo adb devices
你可以尝试(摆脱'sudo'业务)。
答案 1 :(得分:5)
我不认为你等待的时间太长了。经历了3个阶段
整个过程需要3到15分钟。为了加快速度,请确保让仿真器保持打开状态,然后您只需执行第3步。
如果在完成所有操作之前尝试再次单击“运行”,则会错误地假设没有模拟器启动并启动新模拟器。
您还可以选择Window -> Android SDK and AVD Manager
并选择Virtual Devices
,确保您的模拟器正常。您甚至可以先启动设备(第1阶段和第2阶段),而无需实际安装应用程序。您还可以通过选择Eclipse右上角的DDMS或Window -> Open Perspective -> Other -> DDMS
希望这有帮助。
答案 2 :(得分:1)
杀死当前正在运行的服务器的最佳方法
adb kill-server
答案 3 :(得分:0)
启动模拟器后,检查模拟器名称是否已反映在Eclipse-> DDMS-> Devices中。如果它被称为“在线”,您可以运行该应用程序,它不会启动新的模拟器。如果它被称为“离线”,请转到“查看菜单”选项(设备窗口中的小向下箭头按钮)并重置adb。这将重启adb并使模拟器在线。
答案 4 :(得分:0)
转到命令提示符并设置存储adb的路径,并提供以下命令: 首先通过命令adb kill-server来杀死adb 然后通过给出命令adb start-server(对于windows)启动adb 否则,有另一个选项转到DDMS并重新启动adb。
答案 5 :(得分:0)
我不相信你所见证的是一个错误。
您可能不需要重新启动adb。
这是怎么回事:
如果您运行的当前模拟器不符合您尝试运行的项目的最小SDK。 Android SDK管理器将运行符合最低sdk要求的模拟器。