How to Generate .AAB file and Sign Android app Bundle using azure pipeline(如何使用Azure管道生成.AAB文件并签署Android应用包)
问题描述
我要使用Azure管道生成Android应用包(.aab)文件,但在生成Android应用包文件时遇到问题。
我已经使用下面的Gradle任务生成并签署了.aab文件。但是,它会生成.APK文件。我要生成.aab文件。
- task: Gradle@2
inputs:
gradleWrapperFile: 'gradlew'
tasks: 'buildRelease'
publishJUnitResults: false
javaHomeOption: 'JDKVersion'
sonarQubeRunAnalysis: false
spotBugsAnalysis: false
以下是脚本,我在其中使用jarsigner对.aab文件进行签名:
- task: CmdLine@2
displayName: 'Signing and aligning AAB file(s) appuildoutputsundle
eleaseapp-release.aab'
inputs:
script: 'jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore $(KeyStoreFile.secureFilePath) -storepass $(StorePassword) -keypass $(KeyPassword) $(system.defaultworkingdirectory)/app/build/outputs/bundle/release/app-release.aab $(KeyStoreAlias)'
推荐答案
在分级任务中:
我需要将tasks
值‘buildRelease
’更改为‘:app:bundleRelease
’以生成.aab文件。
下面是我用来生成和签名.aab文件的.yaml文件:
trigger:
- master
pool:
vmImage: ubuntu-latest
steps:
- task: DownloadSecureFile@1
inputs:
secureFile: 'AndroidApp.jks'
- task: Gradle@2
inputs:
gradleWrapperFile: 'gradlew'
tasks: ':app:bundleRelease'
publishJUnitResults: false
javaHomeOption: 'JDKVersion'
sonarQubeRunAnalysis: false
spotBugsAnalysis: false
- task: CmdLine@2
displayName: 'Signing and aligning AAB file(s) appuildoutputsundle
eleaseapp-release.aab'
inputs:
script: 'jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore $(KeyStoreFile.secureFilePath) -storepass $(StorePassword) -keypass $(KeyPassword) $(system.defaultworkingdirectory)/app/build/outputs/bundle/release/app-release.aab $(KeyStoreAlias)'
- task: CopyFiles@2
inputs:
SourceFolder: '$(system.defaultworkingdirectory)/app/build/outputs/bundle/release/'
Contents: '**'
TargetFolder: '$(build.artifactstagingdirectory)'
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
以下是我在签名任务中创建和使用的变量:
KeyStoreFile.secureFilePath
StorePassword
KeyPassword
KeyStoreAlias
这篇关于如何使用Azure管道生成.AAB文件并签署Android应用包的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!