簡體   English   中英

Android Studio Lint - 為lint設置API級別

[英]Android Studio Lint - set API level for lint

這就是事情。 我有一個與API 15及更高版本兼容的應用程序,但由於它非常大而且我已經達到65k方法限制,我不得不將其作為MultiDexApplication類的后代。 這會稍微減慢構建時間,因此我必須實施一些優化來加速該過程。 我在清單中有以下代碼,這可以顯着減少構建API> = 21時的構建時間(取自其他一些SO線程):

    productFlavors {
        dev {
            minSdkVersion 21
        }
        prod {
            minSdkVersion 15
        }
    }

一切都很完美,但問題是在開發過程中,Android工作室認為我的minSdkVersion SDK級別是21(正確),並且lint沒有顯示我不兼容的API(15-21)。 我真正想要的是能夠使用minSdkVersion設置為21(快速構建),但將“lint minSdkVersion”設置為15,所以我看到代碼的部分與舊的API不兼容,而不是21。我嘗試過google它,也調查AS lint首選項,但我沒有找到任何有用的東西。 謝謝你的任何建議。 我目前的解決方案是將dev風格的minSdkVersion切換為21並檢查是否有任何錯誤,但這不是我想要的。

這個要點回答了你的問題。 它顯示了如何使用任何開發最小SDK值構建項目,同時為Lint警告維護生產最小SDK值。

要總結帖子,您可以動態計算minSdkVersion值:

int minSdk = hasProperty('devMinSdk') ? devMinSdk.toInteger() : 15
apply plugin: 'com.android.application'

android {
    ...
    defaultConfig {
        minSdkVersion minSdk
        ...
    }
}

在這個例子中,我們檢查是否定義了devMinSdk屬性,如果為true,我們正在使用它。 否則,我們默認為15。

我們如何通過devMinSdk值來構建腳本? 兩種選擇:

使用命令行:

./gradlew installDebug -PdevMinSdk=21

使用Android Studio偏好設置:

轉到首選項 (Windows上的設置 ) - > 構建,執行,部署 - > 編譯器 - >在命令行選項文本框中輸入-PdevMinSdk=21

Android Studio編譯器選項

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM