我知道很多人都遇到过这个问题而且我搜索了Google / Stack Overflow,但我仍然无法弄清楚我做错了什么。
package HelloWorld;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloWorldActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// TextView tv = new TextView(this);
// String hello = "Hello World!";
// tv.setText(hello);
// setContentView(tv);
}
}
我尝试搜索不必要的import android.R;
语句,以及构建/清理/刷新/等,但我似乎无法弄明白。也许这是我安装SDK的方式的问题?我不认为有,但我对此很新,所以我可能在某个地方犯了一个大错。
另外,我收到此错误:
[2011-12-13 18:18:46 - com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] Parser exception for C:\Users\MYNAME\Android Development\Hello World\Hello World\AndroidManifest.xml: The processing instruction target matching "[xX][mM][lL]" is not allowed.
任何人都可以帮助我吗?谢谢!
编辑:我的XML文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="HelloWorld Mylove"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".HelloWorldActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
答案 0 :(得分:4)
在清单中查看此行(在<manifest />
标记的开头)
package="HelloWorld Mylove"
这不是有效的包名,必须更改。通常,包名称由小写单词组成,用点分隔,例如:
com.hello.world
见Naming a Package。将其更改为有效名称。
由于这总体上有点工作,因为你必须在不同的地方改变它(有时因为某种原因而失败),我建议你通过以下方式创建一个新项目eclipse中新的android项目向导。这将在步骤4中询问您是否包名。请确保遵循上述命名约定。你应该得到几乎相同的代码。或者,您可以尝试在项目资源管理器中右键单击项目,然后选择Android Tools -> Rename Application Package
。
¹清单本身,存储* .java文件的文件夹,源文件中的package
语句
答案 1 :(得分:3)
The processing instruction target matching "[xX][mM][lL]" is not allowed.
暗示您的XML声明(<?xml version="1.0" encoding="utf-8"?>
)被误解为处理指令的错误消息。这意味着您的XML声明不是文件中的第一件事。请注意,它必须是您文件中的 very 第一件事 - 即使在它之前也不允许任何空格。如果它已经 是文件中的第一件事,那么要尝试的是将其保存为ASCII / ANSI而不是UTF-8,以消除可能的BOM。 (目前大多数XML解析器都是带有UTF-8的O.K.,它有一个BOM,但最初XML规范不允许这样做,所以似乎可以想象这个解析器可能不满意。)