Подтвердить что ты не робот

Приложение не указывает уровень API

Я только начинаю использовать приложения Eclipse для Android. Я установил Eclipse 3.5.2 и Java 5 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 я пошел в свойства → Android и установил его на 7

получить те же предупреждения

4b9b3361

Ответ 1

Хорошо, если Eclipse по какой-то причине не создает эту строку для вас, вы можете добавить ее самостоятельно.

Добавьте строку:
<uses-sdk android:minSdkVersion="3" />

к вашему манифесту, прямо перед тегом окончательного манифеста.

Ответ 2

Вы также должны включить

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

в файле манифеста, если он еще не существует. Это не ясно из вашего вопроса, но кажется, что это не так.

Для получения дополнительной информации об уровнях API см. эта страница

Ответ 3

Похоже, что в редакции 16 SDK Tools Android есть ошибка, требующая правильного упорядочения тегов 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" />

Ответ 4

В манифесте должен содержаться только один элемент, это ошибка для использования более одного раза.

В ADT 17 у нас появилось новое предупреждение, которое обнаруживает и сообщает об этой проблеме:

$ 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.

Дополнительная информация: http://developer.android.com/guide/topics/manifest/uses-sdk-element.html

Ответ 5

вам нужно указать уровень API в вашем коде, и он должен быть в одной строке.

uses-sdk android: targetSdkVersion = "19" android: minSdkVersion = "4".

Цель должна быть последней. Это может помочь вам, поскольку это сработало для меня. Благодаря