![](/img/trans.png)
[英]What is the difference between min SDK version/target SDK version vs. compile SDK version?
[英]Is it better to have min, target and compile SDK set to equal version?
我正在學習 Android 並且來自 iOS 的陰暗面,在那里一切都得到了更嚴格的處理。
我已經閱讀了min sdk
、 target sdk
和compile sdk
之間的差異。 但是,以下情況對我來說仍然不清楚。
如果我的 min sdk 設置為KitKat (19)
以允許 98% 的用戶群覆蓋,並且我的目標 sdk 設置為Android 10+ (30)
,那么我可以使用 KitKat 上不可用的功能進行編譯。
例如,材料設計應該得到Lolipop (21)
支持。 但是為什么我仍然可以將它添加到我的 KitKat build.gradle 項目中?
dependencies {
implementation "com.google.android.material:material:$material_version"
}
因此,當使用 KitKat Android 的用戶打開我的應用程序時,它應該會因為 Material Design 而崩潰,對嗎? 那么為什么編譯器不抱怨這個並讓它通過呢?
讓所有三個都指向我想要支持的最低版本會更好嗎?
因此,當使用 KitKat Android 的用戶打開我的應用程序時,它應該會因為 Material Design 而崩潰,對嗎? 那么為什么編譯器不抱怨這個並讓它通過呢?
因為庫是向后兼容的,所以它不會崩潰。 否則編譯器會抱怨。
讓所有三個都指向我想要支持的最低版本會更好嗎?
取決於您的要求,但在我看來,最好有一個最小的 sdk 來定位最大的用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.