【问题标题】:How to determine which minSDKVersion to set for my Android App如何确定为我的 Android 应用程序设置哪个 minSDKVersion
【发布时间】:2020-07-01 20:27:26
【问题描述】:

如何确定项目中使用的最低 API 级别或最高 API 级别?有什么方法可以确定我项目中的哪部分代码使用了哪个 API 级别?

android studio 中是否有确定我项目中使用的最低 API 级别和最高 API 级别的方法?例如,所有任务的“TODO”跟踪等,我们在 Android Studio 中是否有任何功能来确定我的项目中使用的最低 API 级别和最高 API 级别?

我是新手,请多多包涵。

【问题讨论】:

  • 欢迎使用堆栈溢出 :) 我已经更新了您的问题以删除您要求工具来实现此目的的部分,因为要求工具或场外资源可能会在我们关闭您的问题时此处不允许对场外资源提出问题,但您的其他问题都可以
  • 很抱歉,我没有意识到这一点,但我想我应该问一下 android studio 中是否有任何方法来确定我的项目中使用的最低 API 级别。例如,所有任务的“TO DO”跟踪等,我们在 Android Studio 中是否有任何功能来确定最低 API 级别。非常感谢您更新我的问题。
  • 如果你想让它特定于android studio,请随意edit你的问题:)
  • 谢谢。我已经更新了问题:)

标签: android android-studio android-min-sdk targetsdkversion


【解决方案1】:

要确定 minSdk 和 maxSdk,请参阅 Gradle 脚本中的 build.gradle(Module: app)。查看项目结构:

  • compileSdkVersion 是 de maxSdk。
  • minSdkVersion 是 minSdk。
  • targetSdkVersion 是经过 maxSdk 测试的版本。
android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"
    defaultConfig {
        applicationId "app.id"
        minSdkVersion 21
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }
}

【讨论】:

    【解决方案2】:

    对于您可以为应用程序的当前状态/版本实际设置的绝对 minSdkVersion(如您在 comments 中所说),您可以使用蛮力识别它:

    1. 将 minSdkVersion 设置为 1
    2. 构建项目。
    3. 如果它构建,则当前 minSdkVersion 是绝对 minSdkVersion,否则它会给出错误,将某些依赖项告诉 anotherSdkVersion,现在将 minSdkVersion 设置为 anotherSdkVersion --转到第 2 步。

    【讨论】:

      【解决方案3】:

      我不明白这是否是您要求的,但这就是我这样做的方式。我也经常忘记在哪里可以找到这些信息。

      转到:File > Project Structure,然后在modules 下选择您的模块(可能是app,然后在标签flavors 下您可以看到最小sdk 和目标sdk。没有最大,因为很多事情都会随着时间发生变化。

      或者您可以转到 gradle 文件,找到 app 范围下的文件,那里有您要的信息。

      来源:

      https://abhiandroid.com/androidstudio/change-api-sdk-level-android-studio.html

      【讨论】:

      • 这会自动评估我项目中使用的最低 API 级别并显示结果吗?
      • 你说的是 gradle 文件吗?无论如何,文件或项目结构中的每一次更改都会触发对整个代码的评估,就像 android studio 已经对当前级别所做的那样
      • 我不是在询问更改最小 sdk 或目标 sdk 的“方法”。我问我是否继续开发,当我完成它时,我怎么知道我的项目的最低 sdk 要求是什么?如何跟踪哪些代码使用了哪个 API 级别以及我的项目中使用的任何代码的最小 API 级别是多少?
      【解决方案4】:

      我也想知道是否有一种不那么乏味的方法来做到这一点。 显然,在 build.gradle 中使用 minSdkVersion 设置为“1”并在应用程序上运行 gradle lint 任务将通过在第一个不兼容的库上停止并指示所需的版本来半自动地执行此操作。

      这里也有描述: Easy way to detect android:minSdkVersion automatically?

      【讨论】:

        猜你喜欢
        • 2015-09-19
        • 1970-01-01
        • 1970-01-01
        • 2017-01-02
        • 2017-07-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-05
        相关资源
        最近更新 更多