只是一个简单的XMl文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example"
android:versionCode="1"
android:versionName="1.0"
android:installLocation="auto"
>
<application android:label="@string/app_name">
<activity android:name=".MyActivity"
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>
然而,我收到错误
“找不到属性'installLocation'的资源标识符 包'android'“
为什么会这样?
编辑
这似乎是IntelliJ的一个问题。至少是我的。这是项目结构的屏幕。我点击了Android 2.3.3 SDK并更改了其构建目标。我在属性
之后做了这个<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="8"/>
没有做到这一点。有任何想法吗?
答案 0 :(得分:6)
您必须指定android:minSdkVersion
和android:targetSdkVersion
并使用至少API 8编译您的APK。例如:
....
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="8" />
</manifest>
这将使用API编译APK。运行Froyo或更高版本的手机将能够使用该功能。 Eclair和旧版本不会(在这种情况下,只有Eclair)。
发生错误的原因是您尝试使用API 7或更早版本编译项目,并在API 8上添加了installLocation
。
答案 1 :(得分:2)
简答:将您的构建目标设置为API级别&gt; = 8并解决您的问题。
更改构建目标is easy:
在Package Explorer中右键单击项目,选择Properties,选择Android,然后检查所需的Project Target。
<强>解释强>
自{8}级以来android:installLocation属性可用,因此您需要确保您的构建目标设置为API级别8或更高级别,否则它将无法编译您的应用程序。
android:minSdkVersion可以小于8,你的应用程序仍可以在较旧的设备上运行,但API级别&lt; 8将简单地忽略该属性。