2013-05-24 5 views
1

Я мог понять, был ли уровень API, требуемый вызовом, выше минимального, но почему это должно быть проблемой, если это равно до минимума?Почему Android Lint говорит: «Для вызова требуется уровень API 8 (Current min is 8)»?

+1

Позвольте мне угадать вы используете 'Android Studio' и видим эту ошибку? – tyczj

+0

Да, в Android Studio. –

+0

http://tools.android.com/tips/lint-checks. проверьте ссылку – Raghunandan

ответ

0

AndroidManifest.xml посмотреть на uses-sdk и значение android:minSdkVersion. Убедитесь, что указанная версия sdk имеет уровень равный или выше 8.

+0

Минимальный уровень SDK установлен в 8, поэтому я не понимаю, почему он жалуется на вызов уровня 8 API. –

+0

При использовании построения градации установите 'minSdkVersion' и' targetSdkVersion' в 'build.grade' вместо элемента' 'в' AndroidManifest.xml'. * Тем не менее * Android Studio 0.6.1 предупреждает, что для некоторых ресурсов компоновки требуется уровень API 11 (текущий минимум 1) ", хотя он установлен на 13. – Jerry101

0

У Android Studio есть проблемы с линией, потому что у меня тоже такая проблема. Проект все равно должен строиться. если не просто сделать простую проверку для сборки версии

if(Build.VERSION.SDK_INT > Build.VERSION_CODES.ECLAIR_MR1){ 
    //code goes here 
} 

и что должно подавлять чеке LINT

5

У меня такая же проблема в Android Studio; это не было проблемой в IntelliJ, которую я использовал до AS.

Чтобы «исправить» Я просто использовал TargetApi аннотации:

@TargetApi(8) 

Я только добавил его к моей основной деятельности и предупреждение пошло прочь везде.

+1

Удивительный! Если вы условно загружаете класс, когда 'Build.VERSION.SDK_INT> n', то помещание' @TargetApi (n) 'в этот класс будет подавлять нежелательные красные предупреждения. – Jerry101