Android 上的 flutter compileSdkVersion 和 targetSdkVersion

新手上路,请多包涵

我想知道如果我想让我的应用程序支持 api 级别为 9.0(Pie) 的新 Android 手机,我应该为 compileSdkVersiontargetSdkVersion 设置什么值 build.gradle 。有人知道吗?

原文由 Daibaku 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.4k
2 个回答

Android 9 的 API 级别为 28。完整列表 在这里

原文由 Vinicius Pinto 发布,翻译遵循 CC BY-SA 4.0 许可协议

compileSdkVersion :实际用于构建应用程序的版本

通常建议使用 Flutter 常量 compileSdkVersion 始终使用 Flutter 支持的最新版本的 SDK 进行编译: compileSdkVersion flutter.compileSdkVersion.

targetSdkVersion : 运行时兼容模式

您也可以使用 targetSdkVersion 的常量,但如果您尚未在最新的 Android 操作系统上测试您的应用程序,则可以定义一个较小的数字。

minimumSdkVersion :将运行您的应用程序的最低设备级别

minimumSdkVersion 值永远不应低于 flutter.minimumSdkVersion 但如果您想要更严格(或者如果您使用需要提高标准的依赖项),则可以更高。

为了能够在 Android Pie (API 28) 上使用您的应用程序,您的 minimumSdkVersion 应该大于或等于 28。

/android/app/build.gradle 的简化示例:

 android {
    compileSdkVersion flutter.compileSdkVersion

    defaultConfig {
        applicationId "your.bundle.id"
        minSdkVersion 21
        targetSdkVersion flutter.targetSdkVersion
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }
}

Flutter 的最小值和最大值

Flutter 常量在此文件中声明: https ://github.com/flutter/flutter/blob/7557281fb24a3ac9cd656d60b7d286e23a3ac3d3/packages/flutter_tools/gradle/flutter.gradle

提炼 :

     static int compileSdkVersion = 31
    static int minSdkVersion = 16
    static int targetSdkVersion = 31

当然,它们可以随着 Flutter 的每次修订而改变

原文由 mbritto 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题