安卓应用无法从Eclipse启动

4

开始之前:我在谷歌和stackoverflow上搜索了,但没有找到明确的答案。

情况:我正在Windows上使用Eclipse开发Android应用程序。因此,当我尝试运行应用程序时,系统会在控制台输出以下内容:

[2010-06-14 17:04:39 - HelloLinearLayout] ------------------------------
[2010-06-14 17:04:39 - HelloLinearLayout] Android Launch!
[2010-06-14 17:04:39 - HelloLinearLayout] adb is running normally.
[2010-06-14 17:04:39 - HelloLinearLayout] Performing com.example.HelloLinearLayout.HelloLinearLayout activity launch
[2010-06-14 17:04:39 - HelloLinearLayout] Automatic Target Mode: launching new emulator with compatible AVD 'Default_2.1'
[2010-06-14 17:04:39 - HelloLinearLayout] Launching a new emulator with Virtual Device 'Default_2.1'

启动模拟器,但不上传 .apk 文件,也不启动活动。因此,应用程序无法启动。

我在这里找到了一个“解决方案”,但它不清楚,似乎也不起作用。例如,我不知道指的是哪些“模拟器进程”需要被杀死。我只找到了 adb.exe。这就是重点:有时我很幸运地杀死了所有他们想要的东西并启动了应用程序。但这是不确定的。

请帮忙,我完全陷入了这个麻烦中。


尝试打开DDMS透视图,查看设备是否在设备下方显示为在线状态(即使模拟器正在运行)。如果它显示为在线状态,则单击设备菜单上的向下箭头,尝试重新启动ADB。 - Ravi Vyas
5个回答

2

我曾多次遇到这种情况,必须采取几种方法来解决问题。

1)如果DDMS正在运行,请关闭它(有时会干扰调试)。

2)启动模拟器,尝试使用DDMS连接,然后断开连接,然后返回eclipse并启动调试器。

3)杀死模拟器,杀死任务管理器中的adb进程,重新启动eclipse,然后尝试调试,让Eclipse启动模拟器,有时第一次加载模拟器会超时,所以当它完全启动后,再次开始调试。

总的来说,我发现不使用模拟器而使用实际设备要容易得多,对我来说是一个更快的过程。


2

我尝试了很多方法来在Windows上使用Eclipse,最终这个设置对我有效。现在我可以重复运行模拟器并成功部署应用程序:

  • 在“运行配置”中 ->选择“手动”作为“部署目标选择模式”
  • 然后点击运行。出现“Android设备选择器”
  • 选择“启动新的Android虚拟设备”选项(这应该显示您已经预先配置的AVD)
  • 选择AVD并点击开始
  • 仅勾选“Wipe User Data”,取消勾选其他复选框
  • 点击“启动”。这应该启动模拟器。给它一些时间来运行。确保等到显示带有Android图标(和Google搜索栏)的主屏幕。等待此内容显示非常重要。否则,应用程序将无法加载。取决于您的CPU速度快慢,主屏幕加载所需的时间会有所不同。
  • 一旦模拟器主屏幕显示出来,请返回Eclipse,在Android设备选择器中选择此模拟器(状态应为在线)
  • 选择此模拟器后,单击确定
  • 应用程序将被加载到模拟器上(请稍等片刻),您应该在模拟器上看到您的应用程序正在运行

这个设置对我来说每次都有效。我无法完全理解为什么这样做有效,而其他“正常”的方法却不行。但我很高兴,我终于能让模拟器和应用程序正常工作了。


好的好的好的,我很高兴至少看到模拟器工作了,尽管“apk”安装失败。虽然费了很长时间(请原谅我的CPU),但为什么它没有安装我的apk?顺便说一句,在模拟器中浏览应用程序菜单时,我看到我的应用程序图标,当我点击它时,它打开了我的活动...所以为什么它告诉我: [2013-05-24 01:12:52 - TEDxK] Failed to install TEDxK.apk on device 'emulator-5554! [2013-05-24 01:12:52 - TEDxK] (null) [2013-05-24 01:12:53 - TEDxK] Launch canceled! - McLan

1
我在Linux(Mint 12,Eclipse Juno Java EE for Web Developers,Android API20,Sun Java 1.6)中遇到了这个问题。我可以从命令行启动模拟器(即“emulator-arm -avd InsertYourVirtualDeviceNameHere -verbose”),但无法从Eclipse中启动。它就像原帖中提到的那样挂起了。我解决的方法是备份原始的“emulator”以备不时之需,然后复制“emulator-arm”并将其重命名为“emulator”。这些模拟器位于Android SDK安装的“tools”目录中。我仍在努力弄清楚如何让Eclipse正确地指向“emulator-arm”,而不需要这个hack。

0

我也遇到过这种情况。对我来说,问题似乎是应用程序已经在我安装apk的设备上运行了。当我关闭它时,它就可以正常工作了。


0
如果你在使用Eclipse,检查一下你的设置。
运行配置—公共—选择标准输入和输出文件—点击
工作空间并选择你的项目。

欢迎来到Stack Overflow!这并没有提供问题的答案。一旦您拥有足够的声望,您将能够评论任何帖子;相反,提供不需要询问者澄清的答案 - ddb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接