gpt4 book ai didi

android - 如何在 Android 中以编程方式获取 "CompileSdkversion"

转载 作者:行者123 更新时间:2023-12-05 00:18:01 29 4
gpt4 key购买 nike

我的应用程序中有一个关于框,显示有关应用程序、手机及其使用的数据的信息。当用户遇到问题时,它非常有用。我可以使用“android.os.Build.VERSION.SDK_INT”获取手机的 SDK 版本。但是,我还没有找到一种方法来获取“CompileSdkversion”的值,该值表示应用程序编译时使用的 SDK 版本。这是在 build.gradle 文件中设置的值。

最佳答案

虽然 Android 操作系统版本因用户而异,但 compileSdkVersion才不是。对于版本 X.Y.Z您的应用程序的 compileSdkVersion是您在编译该应用程序版本时所说的内容。只要你的关于框包含应用程序版本,你就会知道compileSdkVersion您使用的,如果您跟踪它(例如,检查它在您的版本控制系统中的内容)。
但是,如果你真的想让它在运行时对你可用,你有两个选择。
如果您的 minSdkVersion31或更高,您可以use compileSdkVersion on ApplicationInfo .但是,如果您在 2026 年之前阅读这篇文章,很有可能您的 minSdkVersion低于那个。
对于 Android 12 之前的旧设备,您可以添加 BuildConfig字段,至少对于较新版本的 Android Gradle 插件:

android {
compileSdk 31

defaultConfig {
applicationId "com.commonsware.android.myapplication"
minSdk 23
targetSdk 31
versionCode 1
versionName "1.0"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
buildConfigField "int", "COMPILE_SDK_VERSION", "$compileSdk"
}

// other stuff goes here
}
这将采用您为 compileSdk 定义的值并将其提升到 BuildConfig.COMPILE_SDK_VERSION ,因此您可以在运行时引用它。这是使用废弃的北极狐项目进行测试的,使用的是 Android Gradle 插件的 Gradle 7.0.2 和 7.0.3。

关于android - 如何在 Android 中以编程方式获取 "CompileSdkversion",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69935139/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com