签署 Android apk 时从管道访问 Azure DevOps 上的安全文件

art*_*ois 3 android azure gradle azure-pipelines

如何在签署 Android apk 时从“Azure Pipelines”访问存储在“Azure Secure Files”中的 .jks 文件?

我的想法只是调用 gradlew assembleRelease 在 Azure Pipeline 上生成并签署 apk。登录gradle配置如下:

    signingConfigs {
    register("release") {
        storeFile(file(System.getenv("APK_KEYSTORE")))
        storePassword(System.getenv("APK_KEYSTORE_PASSWORD"))
        keyAlias(System.getenv("APK_KEY_ALIAS"))
        keyPassword(System.getenv("APK_KEY_PASSWORD"))
    }
}
Run Code Online (Sandbox Code Playgroud)

它可以在本地运行,但无法访问存储在 Azure 中“安全文件”中的 APK_KEYSTORE 文件

我已经尝试过并且有效的是这个Android 签名任务,但是我也需要在本地签名并生成 apk,所以我需要上面的这个示例

Kev*_*SFT 7

\n

在签署 Android apk 时,如何从“Azure\nPipelines”访问存储在“Azure Secure Files”中的 .jks 文件?

\n
\n

在 Azure Pipelines 中,您无法直接使用Pipelines -> Library -> Secure files中的安全文件。

\n

您需要在管道中添加下载安全文件任务。然后 .jks 文件将下载到$(Agent.TempDirectory)。这是代理临时文件夹(例如/home/vsts/work/_temp)。

\n

这是一个例子:

\n

在此输入图像描述

\n

运行管道时,.jks会下载到本地,然后可以在temp文件夹\xef\xbc\x88中找到并使用它路径:$(Agent.TempDirectory) /key.jks\xef\xbc\x89 。

\n