如何在运行时获得最小sdk版本(minSdkVersion)?

Mah*_*rai 1 android

我想minSdkVersion在运行时使用它来构建应用程序.我尝试使用以下代码.

getPackageManager().getPackageInfo(context.getPackageName(), 0).applicationInfo.targetSdkVersion
Run Code Online (Sandbox Code Playgroud)

在文档targetSdkVersion中提到了评论The minimum SDK version this application targets..但它提供了运行应用程序的当前版本.

是否有任何预定义的方式可用于获得minSdkVersion?(或)是否有任何黑客可以得到minSdkVersion

Ped*_*tos 9

如果你想要,你也可以在你的gradle中声明它:

defaultConfig {
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 5
        versionName "some name"
        applicationId "com.myapp"
        buildConfigField "int", "MIN_SDK_VERSION", "$minSdkVersion.apiLevel"
}
Run Code Online (Sandbox Code Playgroud)

然后在你的代码中你只需要得到它:

BuildConf.MIN_SDK_VERSION
Run Code Online (Sandbox Code Playgroud)

  • 我必须这样做才能使它工作:`buildConfigField"int","MIN_SDK_VERSION","$ minSdkVersion.apiLevel"` (4认同)
  • API 级别 24 在“ApplicationInfo”上引入了“minSdkVersion”字段,但不幸的是,您必须使用此答案来支持旧设备。 (2认同)