如何修复Google Api错误:禁止:上载应用程序以播放商店时,Android应用程序捆绑包使用错误的密钥签名

问题描述

我尝试使用keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000生成新密钥。将其复制到android/app/~/.android/。它一直在抱怨。我运行./gradlew signingReport很好。

在我的build.gradle中,

signingConfigs {
        debug {
            storeFile file('debug.keystore')
            storePassword 'android'
            keyAlias 'androiddebugkey'
            keyPassword 'android'
        }
    }
    buildTypes {
        debug {
            signingConfig signingConfigs.debug
        }
        release {
            // Caution! In production,you need to generate your own keystore file.
            // see https://facebook.github.io/react-native/docs/signed-apk-android.
            signingConfig signingConfigs.debug
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"),"proguard-rules.pro"
        }
    }

我的fastlane fastfile

desc "Submit a new build to Play Store 'Testing' track"
  lane :testingtrack do
    # gradle(task: 'assemble',build_type: 'Release')
    gradle(
      task: "bundle",build_type: "Release",print_command: false,)
    increment_version_code(
      gradle_file_path: "app/build.gradle",)
    upload_to_play_store(track: 'Testing',skip_upload_apk: true)
    # slack(message: 'Successfully distributed a new beta build')
  end  

我正在尝试上传一个Beta版应用程序,该应用程序以前只能运行一次,但我重新存储了回购协议,但未保存旧密钥。我还尝试使用Android Studio生成新的签名密钥,该签名失败并显示不同的错误“无法读取文件”。我还尝试从游戏商店下载上传密钥,但效果不佳。

解决方法

没有先前的调试密钥,您将无法修复。

您上次上传的应用显然已使用由Android Studio自动创建的调试密钥进行了签名。但是,调试密钥库仍然是可用于发布的有效密钥库。

将应用上传到处于任何发行或测试轨道(生产,测试版,Alpha,内部版本)的Play商店后,您都将被锁定。然后,只有再次使用完全相同的签名密钥,才能更新应用