我正在尝试通过Eclipse的ADT插件开发我的第一个Android应用程序。我已经下载并安装了ADT和Android SDK,并创建了一个HelloAndroid
Android项目。我创建了一个名为 HelloAndroidEmulator1
的新AVD,仅用于测试我的HelloAndroid
应用。
当我去运行我的项目(根据我自动生成的HelloAndroidActivity.java
)时,我遇到了一些奇怪的错误。我没有更改Eclipse为我生成的任何源代码,也没有添加任何我自己的代码。我只是想编译并运行自动生成的内容。
当我查看layout/main.xml
文件的图形布局时,我看到我的应用程序的呈现显示文本:
HelloAndroid
Hello World, HelloAndroidActivity!
其中HelloAndroid
是我的Eclipse项目的名称,HelloAndroidActivity
是Eclipse为我制作的主要驱动程序的名称。
当我去实际运行应用程序时,我根本得不到任何类似的输出。模拟器加载,在显示启动“android”启动画面大约60秒后,它开始加载,但后来给我一个错误:
Launcher没有响应。你想关闭吗?
回到Eclipse内部,我的控制台输出看起来像这样(在我关闭启动器之后):
[2012-01-03 11:23:23 - HelloAndroid] ------------------------------
[2012-01-03 11:23:23 - HelloAndroid] Android Launch!
[2012-01-03 11:23:23 - HelloAndroid] adb is running normally.
[2012-01-03 11:23:23 - HelloAndroid] Performing net.me.myprojects.android.proj.HelloAndroidActivity activity launch
[2012-01-03 11:23:23 - HelloAndroid] Automatic Target Mode: Preferred AVD 'HelloAndroidEmulator1' is not available. Launching new emulator.
[2012-01-03 11:23:23 - HelloAndroid] Launching a new emulator with Virtual Device 'HelloAndroidEmulator1'
[2012-01-03 11:23:36 - Emulator] emulator: WARNING: Unable to create sensors port: Unknown error
[2012-01-03 11:23:36 - HelloAndroid] New emulator found: emulator-5554
[2012-01-03 11:23:36 - HelloAndroid] Waiting for HOME ('android.process.acore') to be launched...
[2012-01-03 11:25:00 - HelloAndroid] HOME is up on device 'emulator-5554'
[2012-01-03 11:25:00 - HelloAndroid] Uploading HelloAndroid.apk onto device 'emulator-5554'
[2012-01-03 11:25:00 - HelloAndroid] Installing HelloAndroid.apk...
[2012-01-03 11:27:03 - HelloAndroid] Failed to install HelloAndroid.apk on device 'emulator-5554!
[2012-01-03 11:27:03 - HelloAndroid] (null)
[2012-01-03 11:27:03 - HelloAndroid] Failed to install HelloAndroid.apk on device 'emulator-5554': EOF
[2012-01-03 11:27:03 - HelloAndroid] com.android.ddmlib.InstallException: EOF
[2012-01-03 11:27:03 - HelloAndroid] Launch canceled!
我尝试在线搜索,但找不到任何跳出来的明显罪魁祸首。我不能安装或配置正确的东西,但我可以确认:
C:\Users\me\android-sdk
修改:以下是HelloAndroidActivity.java
的来源:
package net.me.myprojects.android.proj;
import android.app.Activity;
import android.os.Bundle;
public class HelloAndroidActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
关于这里发生了什么的任何想法?!?!提前谢谢!
答案 0 :(得分:5)
确保您的虚拟设备具有有效的SD卡大小(即大于0)
答案 1 :(得分:3)
尝试一些修复:
如果这不起作用,那就给我你的HelloAndroidActivity类。我会尝试在我的机器上运行它,并会看到。
向其添加文字视图..
public class HelloAndroidActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, Android");
setContentView(tv);
}
}
如果您仍然收到任何错误,请按照本教程进行操作。 Android Tutorial
答案 2 :(得分:1)
当我使用一个使用SQLite的新应用程序时,我遇到了同样的错误。
无论如何,问题是即使在关闭Eclipse和Emulator之后......在任务管理器中,进程adb.exe或abd.exe * 32仍在运行。
步骤:
1.关闭日食和模拟器
2.终止进程adb.exe或abd.exe * 32
3.开始你的日食,清理你的应用程序一次,它几乎像新的。
快乐的编码。
答案 3 :(得分:1)
对我来说,在尝试多次重新运行后,错误自行消失了。可能一段时间后系统会在内存中过滤掉一些旧副本。
答案 4 :(得分:0)
手动启动模拟器并检查您的应用是否已安装。如果安装它只是删除它并重试使用eclipse启动你的应用程序。