【问题标题】:React native: I'm getting error with Keystore file in GitHub Actions with android build apkReact native:我在 GitHub Actions 中使用 android build apk 的 Keystore 文件出现错误
【发布时间】:2022-08-21 18:39:31
【问题描述】:

我将 my-upload-key.keystore 转换为 base64 并将内容作为 ANDROID_SIGNING_KEY 导入到我的存储库机密中。但是当我尝试运行 CI/CD 操作时出现此错误。

> Keystore file \'/home/runner/work/SampleApp/SampleApp/android/app/my-upload-key.keystore\' not found for signing config \'release\'.

我的 yml 代码:

  - name: Sign APK
        id: sign_app
        uses: r0adkll/sign-android-release@v1
        with:
          releaseDirectory: android/app/build/outputs/apk/release
          signingKeyBase64: ${{ secrets.ANDROID_SIGNING_KEY }}
          alias: ${{ secrets.ANDROID_ALIAS }}
          keyStorePassword: ${{ secrets.ANDROID_KEY_STORE_PASSWORD }}
          keyPassword: ${{ secrets.ANDROID_KEY_PASSWORD }}

/app/build.gradle

    signingConfigs {

         release {
            if (project.hasProperty(\'MYAPP_UPLOAD_STORE_FILE\')) {
                storeFile file(MYAPP_UPLOAD_STORE_FILE)
                storePassword MYAPP_UPLOAD_STORE_PASSWORD
                keyAlias MYAPP_UPLOAD_KEY_ALIAS
                keyPassword MYAPP_UPLOAD_KEY_PASSWORD
            }
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile(\"proguard-android.txt\"), \"proguard-rules.pro\"
        }
    }

我知道 my-upload-key.keystore 不应该上传到我的存储库,但问题是,为什么它需要这个文件,而我已经将它作为 base64 操作部分导入?

    标签: android react-native github-actions keystore cicd


    【解决方案1】:

    解决方案:我从 /app/build.gradle 中删除了发布部分,它可以工作。基本上,我们需要在运行签名作业之前创建一个未签名的版本。更新后的 /app/build.gradle 是:

     signingConfigs {
            //  release {
            //     if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
            //         storeFile file(MYAPP_UPLOAD_STORE_FILE)
            //         storePassword MYAPP_UPLOAD_STORE_PASSWORD
            //         keyAlias MYAPP_UPLOAD_KEY_ALIAS
            //         keyPassword MYAPP_UPLOAD_KEY_PASSWORD
            //     }
            // }
        }
        buildTypes {
            release {
                //  signingConfig signingConfigs.release
                minifyEnabled enableProguardInReleaseBuilds
                proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-07
      • 1970-01-01
      • 2020-07-27
      • 2018-07-07
      • 2019-07-01
      • 2017-09-12
      • 1970-01-01
      相关资源
      最近更新 更多