Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 应用程序未指定API级别_Android_Eclipse - Fatal编程技术网

Android 应用程序未指定API级别

Android 应用程序未指定API级别,android,eclipse,Android,Eclipse,我刚刚开始在Android应用程序中使用Eclipse。 我已经安装了Eclipse3.5.2和Java5 AVD是Android 2.1 API 7 我最初的Hello Android程序运行良好,但不会再次运行 获取以下错误: [2010-07-25 09:47:31-HelloAndroid]警告:应用程序未指定API级别要求 [2010-07-25 09:47:31-HelloAndroid]设备API版本为7(Android 2.1-update1) 搜索了论坛,但只能找到引用清单文件

我刚刚开始在Android应用程序中使用Eclipse。 我已经安装了Eclipse3.5.2和Java5 AVD是Android 2.1 API 7

我最初的Hello Android程序运行良好,但不会再次运行

获取以下错误:

[2010-07-25 09:47:31-HelloAndroid]警告:应用程序未指定API级别要求
[2010-07-25 09:47:31-HelloAndroid]设备API版本为7(Android 2.1-update1)

搜索了论坛,但只能找到引用清单文件,以确保设置了以下内容:

<uses-sdk android:minSdkVersion="3" />

我的清单文件不包含该行:

 <?xml version="1.0" encoding="utf-8" ?> 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.helloandriod" android:versionCode="1" android:versionName="1.0">
     <application android:icon="@drawable/icon" android:label="@string/app_name">
         <activity android:name=".HelloAndroid" 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>

我已检查adv mgr,它设置为7 在Eclipse中,我转到properties->Android并将其设置为7


得到同样的警告好吧,如果Eclipse出于任何原因没有为您生成该行,那么您可以自己添加它

添加行:


到您的清单,就在结束清单标签之前。

您还应该包括

<uses-sdk android:minSdkVersion="7" />

在您的清单文件中,如果它不在那里。你的问题不清楚,但似乎不清楚


有关API级别的进一步参考,请参见

安卓SDK工具第16版中似乎有一个bug,它要求对
uses SDK
标记进行正确排序。如果同时使用
targetSdkVersion
minSdkVersion
,请按如下顺序订购:

<uses-sdk android:targetSdkVersion="10" /> <!-- before minSdkVersion -->
<uses-sdk android:minSdkVersion="7" />     <!-- after targetSdkVersion -->

颠倒顺序将显示警告消息并弹出设备选择窗口。因此,我建议将其写在一行中:

<uses-sdk android:targetSdkVersion="10" android:minSdkVersion="7" />

清单应该只包含一个元素,多次使用是错误的

在ADT 17中,我们有一个新的lint警告,用于检测和报告此问题:

$ lint --version
lint: version 17
$ lint --show MultipleUsesSdk
MultipleUsesSdk
---------------
Summary: Checks that the <uses-sdk> element appears at most once

Priority: 6 / 10
Severity: Error
Category: Correctness

The <uses-sdk> element should appear just once; the tools will *not* merge the
contents of all the elements so if you split up the atttributes across
multiple elements, only one of them will take effect. To fix this, just merge
all the attributes from the various elements into a single <uses-sdk>
element.
$lint--版本
林特:第17版
$lint--显示多个SDK
多粒子
---------------
摘要:检查元素是否最多显示一次
优先权:6/10
严重性:错误
类别:正确性
元素应该只出现一次;这些工具将*不*合并
所有元素的内容,因此如果您将属性拆分为
多个元素,其中只有一个将生效。要解决此问题,只需合并
将各个元素中的所有属性合并为一个
元素。

更多信息:

您必须在代码中指定API级别,它应该在一行中

使用sdk android:targetSdkVersion=“19”android:minSdkVersion=“4”


目标应该是最新的。它可能会帮助你,因为它对我有用。谢谢

另外,请确保准确阅读设置各种
标记的影响:谢谢您的输入。对于阅读本文的其他人,我手动输入了两个src命令,Eclipse不喜欢手动输入。说是不同步。但是我能够在Eclipse中更新清单。它现在运行没有错误,但avd只提供日期和时间。我会弄明白的,但至少没有错误。谢谢你,这是我的荣幸。Eclipse不会仅仅因为您在SDK管理器中创建了AVD而生成该行。通过属性设置目标API是正确的做法,但也不会为您生成行。只有在项目创建时指定了AVD时,才会生成它。在导入现有项目时,我找不到这样的方法,只能通过打开的新项目来指定。这对我来说非常有效。谢谢我使用了项目构建目标Android 4.0和代码,也感谢您在这里发表评论。作为参考,已结束的问题是。