【问题标题】:Android API not allowing application to be released on play storeAndroid API 不允许应用程序在 Play 商店中发布
【发布时间】:2020-07-11 13:10:57
【问题描述】:

我刚刚完成了我的 android 项目,并决定将它发布到 Google Play 商店。当我在 Google Play Console 的生产选项卡中上传签名的 APK 文件时,我遇到了以下问题:

这里是gradle信息:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "com.parma.torupee"
        minSdkVersion 26
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.android.support:design:26.1.0'
    compile 'com.jjoe64:graphview:4.2.1'
}

我在 Android Studio 3.0.1 中开发了应用程序(未更新)。我尝试将目标 SDK 更改为 29,但随后我收到了 gradle 文件中 implementation 'com.android.support:appcompat-v7:26.1.0'implementation 'com.android.support:design:26.1.0' 行的错误。

如何将目标 SDK 更改为 29 以使其支持最新版本并支持 API 级别 26(Oreo)?任何帮助将不胜感激!

【问题讨论】:

  • 看起来您的项目依赖于已弃用的 android.support 库模块,您很可能需要 migrate to AndroidX 然后尝试增加目标 SDK。

标签: android android-studio


【解决方案1】:

编译 SDK 版本 编译 SDK 版本是您编写代码的 Android 版本。如果选择 9,则可以使用版本 28 中的所有 API 编写代码。

最低 SDK 版本 Android 操作系统 (OS) 版本向后兼容。如果您的 minSdkVersion 设置为 Android 版本 22,您的应用程序将在 Lolipop (5.1) 及更高版本上运行。

目标 SDK 版本 您应该将 targetSdkVersion 设置为您测试过的最新版本的 Android。

每当新版本的 Android 发布时,您都需要将 targetSdkVersion 更新到最新的 Android 版本并测试您的应用以解决任何问题。如果你不谷歌可能会强迫你更新它。这允许您使用通常适用于大多数操作系统版本的新安全补丁。

增加目标 sdk 不会影响您定义的最低版本号。

已编辑:更新了对支持库的评论

如果您想将目标 SDK 更新到 28,那么可能会更容易,因为您可以使用以下支持库

com.android.support:support-compat:28.0.0 但如果您打算将目标 sdk 用作 29,那么您必须将所有支持包迁移到 androidx 库。

https://developer.android.com/topic/libraries/support-library/packages

为了更轻松的迁移,您可以按照此处的步骤进行操作https://developer.android.com/jetpack/androidx/migrate

如果这有帮助,请告诉我

【讨论】:

  • 你能帮我一步步改变吗?我很困惑我应该从哪里开始?比如如果我更新我的 Android Studio,我当前的项目会不会有任何错误?
  • 另外,如果我将 andorid 项目更新到 3.4 且没有任何错误,那么我可以在我的 gradle 中添加 androidX 支持吗?然后可能将 targetSDK 更改为 29?
  • 不,如果你更新你的安卓工作室,你不会有任何错误。是的,绝对可以,您可以升级 android studio,他们可以将目标 sdk 更新到 29。您可以按照此 weblink 进行操作,这清楚地显示了将您的项目升级到 adndroid x 库的步骤。如果您仍然需要这方面的帮助,请告诉我。
  • 这些步骤可能有助于 Andoid Stupdio 升级 --> 迁移到 android X 然后将你的 sdk 版本更新到 29。
  • 这对我帮助很大,我正确升级了我的生产包。感谢您的帮助。
【解决方案2】:

你可以使用:

implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.android.support:design:29.0.0'

【讨论】:

    猜你喜欢
    • 2020-01-06
    • 2019-11-17
    • 1970-01-01
    • 1970-01-01
    • 2012-10-20
    • 1970-01-01
    • 2019-07-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多