我已经写了一个Android应用程序,但发布过程的最后一步仍然让我摸不着头脑。我假设当我运行gradle bundleRelease时,它会生成我可以上传到play商店的aab文件。但是玩具店说捆绑包没有签名。然而,构建过程说它正在签名:
> 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:bundleReleasegradle构建脚本中有一个签名部分:
android {
...
signingConfigs {
release {
storeFile file(...)
storePassword '...'
keyAlias '...'
keyPassword '...'
}
}如果在运行构建之前删除所有aab文件,则会在
..\app\build\outputs\bundle\release看起来一切正常,除了play商店不接受aab:
The Android App Bundle was not signed.如何构建可发布的aab?
发布于 2019-11-04 01:15:06
如果有人仍在寻找解决方案,请将release config中的debuggable设置为false。你的应用程序构建gradle文件应该包含以下内容-
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
debuggable = false
}
}发布于 2019-06-09 16:54:30
似乎我在这里找到了解决方案How to create a release signed apk file using Gradle?,显然在buildType中需要一个signingConfig条目。下面是块添加后在我的构建文件中的样子。
android {
...
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
}这是不是很奇怪,我期望它已经在那里?由于我既不是IntelliJ的粉丝,也不是Gradle的粉丝,我会将我对整个构建和发布过程的感受归因于对工具链缺乏经验。重要的是,应用程序在play商店中。
发布于 2020-01-24 16:25:52
您可以使用./gradlew :app:bundleRelease而不是./gradlew bundleRelease
这对我很有效!
https://stackoverflow.com/questions/56504709
复制相似问题