Я разрабатываю приложение для Android в Android Studio, и я вызываю метод из уровня API 19. Мой проект build.gradle выглядит вот так:«Вызов новых методов на старых версиях» проверка не обнаруживает более высокие, чем минимальные вызовы api в Android Studio
android {
compileSdkVersion 24
buildToolsVersion '24.0.2'
productFlavors {
// Define separate dev and prod product flavors.
dev {
// dev utilizes minSDKVersion = 21 to allow the Android gradle plugin
// to pre-dex each module and produce an APK that can be tested on
// Android Lollipop without time consuming dex merging processes.
minSdkVersion 21
}
prod {
// The actual minSdkVersion for the application.
minSdkVersion 16
}
}
defaultConfig {
applicationId "com.myapp"
minSdkVersion 16
multiDexEnabled true
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
}
У меня нет файлов lint.xml в моем проекте, поэтому никакие чеки lint не переоцениваются.
Проблема в том, что проверка ворса «Вызов новых методов в старых версиях». не находит вызов метода для уровня API 19. Если я открою панель вариантов построения и выберем prodDebug
или prodRelease
, то метод будет выделен красным цветом, но проект будет хорошо работать. Как я могу заставить Android Studio эффективно продемонстрировать вышеупомянутый метод в результате анализа или заблокировать меня от правильного построения проекта?
Редактировать Я нашел способ поиска методов, не соответствующих минимальному SDK. Перейдя на панель Gradle справа и запустив задачу lint
, создается HTML-отчет, который, наконец, отображает вызов API 19 наряду с другими вызовами. Почему это не реализовано в Android Studio?
Поскольку это все еще не работает в Android Studio как таковой, но, скорее, в Gradle, я еще не закрываю вопрос.
Дубликат https://stackoverflow.com/questions/39710692/how-to-enable-lint-error-in-android-studio-for-message-call-require-api-level – Flow