android bundleRelease 不签署 aab

标签 android google-play release signing

我已经编写了一个 Android 应用程序,但发布过程的最后一步仍未完成。我假设当我运行 gradle bundleRelease 时,它​​会生成我可以在 Play 商店上传的 aab 文件。但是 Play 商店说 bundle 未签名。但是,构建过程表示它正在签名:

> Task :app:preBuild UP-TO-DATE
> Task :app:preReleaseBuild UP-TO-DATE
> Task :app:compileReleaseRenderscript NO-SOURCE
> Task :app:generateReleaseResValues UP-TO-DATE
> Task :app:generateReleaseResources UP-TO-DATE
> Task :app:mergeReleaseResources UP-TO-DATE
> Task :app:checkReleaseManifest UP-TO-DATE
> Task :app:createReleaseCompatibleScreenManifests UP-TO-DATE
> Task :app:mainApkListPersistenceRelease UP-TO-DATE
> Task :app:processReleaseManifest UP-TO-DATE
> Task :app:bundleReleaseResources UP-TO-DATE
> Task :app:checkReleaseDuplicateClasses UP-TO-DATE
> Task :app:mergeExtDexRelease UP-TO-DATE
> Task :app:compileReleaseAidl NO-SOURCE
> Task :app:generateReleaseBuildConfig UP-TO-DATE
> Task :app:prepareLintJar UP-TO-DATE
> Task :app:generateReleaseSources UP-TO-DATE
> Task :app:javaPreCompileRelease UP-TO-DATE
> Task :app:processReleaseResources UP-TO-DATE
> Task :app:compileReleaseJavaWithJavac UP-TO-DATE
> Task :app:transformClassesWithDexBuilderForRelease UP-TO-DATE
> Task :app:mergeDexRelease UP-TO-DATE
> Task :app:mergeReleaseShaders UP-TO-DATE
> Task :app:compileReleaseShaders UP-TO-DATE
> Task :app:generateReleaseAssets UP-TO-DATE
> Task :app:mergeReleaseAssets UP-TO-DATE
> Task :app:mergeReleaseJniLibFolders UP-TO-DATE
> Task :app:transformNativeLibsWithMergeJniLibsForRelease UP-TO-DATE
> Task :app:processReleaseJavaRes NO-SOURCE
> Task :app:transformResourcesWithMergeJavaResForRelease UP-TO-DATE
> Task :app:buildReleasePreBundle UP-TO-DATE
> Task :app:collectReleaseDependencies UP-TO-DATE
> Task :app:configureReleaseDependencies UP-TO-DATE
> Task :app:packageReleaseBundle UP-TO-DATE
> Task :app:signingConfigWriterRelease UP-TO-DATE
> Task :app:signReleaseBundle
> Task :app:bundleRelease

gradle 构建脚本中有一个签名部分:

android {
    ...
    signingConfigs {
        release {
            storeFile file(...)
            storePassword '...' 
            keyAlias '...'
            keyPassword '...'
        }
    }

如果我在运行构建之前删除所有 aab 文件,则会在

中生成一个 app.aab
..\app\build\outputs\bundle\release

似乎一切正常,只是 play 商店不接受 aab:

The Android App Bundle was not signed.

如何构建可发布的 aab?

最佳答案

如果有人仍在寻找解决方案 - 在发布配置中将 debuggable 设置为 false。您的应用构建 gradle 文件应包含以下内容 -

buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
            debuggable = false
        }
    }

关于android bundleRelease 不签署 aab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56504709/

相关文章:

android检查是否以编程方式允许非市场应用程序

git - 如何在 Git 中记录 Web 项目的发布历史?

android - 仅在发布时启动应用程序崩溃

空对象引用上的 java.lang.NullPointerException :'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)'

android - Webview - 在外部浏览器中打开链接?

android - 'Start rollout to production' 按钮在 'Timed Publishing' 中会做什么

c++ - 调试和 Release模式下的不同结果

android - 如何将标题添加到 PopupMenu 上的组,而不是子菜单

android - 在 Android Studio 上导入 JavaFX 项目

android - API自动将apk上传到Google Play?