如何使用正确的签名密钥对我的android应用包进行签名?
答案 0 :(得分:3)
该错误表明您之前已经上传了APK或应用捆绑包。您上传到Play控制台的所有工件都应使用相同的密钥库签名。 因此,该错误意味着您使用与之前上传的密钥不同的密钥对App Bundle进行了签名。您必须找到以前使用过的密钥库,或者通过与Play控制台支持团队联系来重置密钥。
答案 1 :(得分:2)
在这里反应本地人!
尝试从 ./ gradlew bundleRelease 命令上载生成的.aab文件后出现此错误。我通过再次使用Android Studio导出.aab文件来修复它。我相信这是将您的第一个.aab文件上传到Google Play的方法。如果您不知道怎么做:
在Android Studio中:
现在,如果您上传此.aab文件,则该文件应被接受。
答案 2 :(得分:2)
如果您已从Google Play请求一个新的上传密钥,但仍然收到此错误(本机Android和Flutter都应如此)。
我遇到了同样的问题。这是解决问题的步骤:
解决方案是清理您的项目,从头开始重建它,以重置所有缓存的内部版本。
在Flutter的情况下(我们在使用Flutter构建应用时遇到此错误)。确保使用
flutter clean
在模拟器或设备上构建应用程序。
然后运行:
flutter build appbundle --release
这是我们所解决的问题。
PS。这也应该在原生Android上也有帮助。
答案 3 :(得分:2)
迟到的答案(对于任何可能仍在为这个话题苦苦挣扎的人)-
您可能忘记了该项目的 .jks 文件。
在文件资源管理器中搜索 .jks 文件。
将其连接到您的项目。
答案 4 :(得分:1)
我在桌子上敲了一下脑袋大约两个小时。当我最终放弃并填写“重置密钥”请求时,我意识到我目前一直在尝试将其始终上传到错误的项目。
因此,第一步:确认您正在尝试上传到正确的项目。
答案 5 :(得分:1)
在此上浪费了我的2天时间,虽然拥有我的密钥库密钥,但仍然显示错误并要求google生成新密钥。工作!
只需重建项目并再次生成签名的apk,然后尝试!
答案 6 :(得分:1)
我意识到,当我上传 apk 时,它会给出更详细的错误。因此,也许尝试解决错误,然后再尝试应用捆绑。
希望有帮助。
答案 7 :(得分:0)
我所做的是从git中排除了我的android文件,然后当我更改分支并重建时,我的build.gradle文件被覆盖了。
答案 8 :(得分:0)
我尝试在此处和this question中使用多个答案,但是由于我的android/app/build.gradle
和android/gradle.properties
文件存在一些问题,我莫名其妙地收到了这个错误。
除了此处的其他解决方案外,您还应检查两件事:
android/gradle.properties
和android/app/build.gradle
中,确保您的keystore
变量完全匹配。
android/gradle.properties
中,您可能会遇到以下情况:
MYAPP_RELEASE_STORE_FILE=<>
MYAPP_RELEASE_KEY_ALIAS=<>
MYAPP_RELEASE_STORE_PASSWORD=<>
MYAPP_RELEASE_KEY_PASSWORD=<>
android/app/build.gradle
中的变量名匹配:
android {
...
signingConfigs {
release {
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
}
}
android/app/build.gradle
中,确保在signingConfig
signingConfigs.release
中将release
设置为buildTypes
:
android {
...
buildTypes {
debug ...
release {
signingConfig signingConfigs.release
}
}
}
答案 9 :(得分:0)
我正在使用expo构建我的应用包。就我而言,我必须:
expo fetch:android:keystore
keytool -h
来查看可用的各种命令。expo ba -c
,采用手动方法,当被问到时,我指定了在步骤1中创建的密钥库文件。答案 10 :(得分:0)
构建签名的Android应用程序捆绑包时出现相同的错误。
为了在本地计算机上进行调试,我在发布版本类型中启用了debuggable
。
看来,Playstore识别出一个调试版本,只是说它不是有效的捆绑软件。
build.gradle:
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
//debuggable = true <----- Works like expected when disabled
}
}
答案 11 :(得分:0)
对于那些没有手动生成的keystore
来发布apk并在尝试从另一台计算机上发布apk或捆绑包时遇到此问题的人,请执行以下步骤:
从用于构建应用程序第一个版本的计算机中复制debug.keystore(C:\ Users \ username \ .android \ debug.keystore)
选择构建>生成签名包/ APK
提供密钥存储路径到debug.keystore文件
使用下面提到的默认值填充其他字段并进行构建
Keystore name: "debug.keystore"
Keystore password: "android"
Key alias: "androiddebugkey"
Key password: "android"
CN: "CN=Android Debug,O=Android,C=US"
答案 12 :(得分:0)
这对我有用!
当第一次上传 apk/bundle 到 Play 商店时,您可能会生成 private_key.pepk 那么您的密钥也可能会被更改。因此,如果您选择了默认密钥别名 key0,请确保您选择了正确的别名,然后才能继续。如果这些步骤正确,那么您的捆绑包将成功上传。
答案 13 :(得分:0)
如果您将应用发布到 Playstore 并发现错误 Your Android App Bundle is signed with the wrong key. Ensure that your app bundle is signed with the correct signing key and try again
:
然后,
如果您在达到 pic 中显示的当前状态之前尚未生成/更改应用程序包或重建/清理项目,请确保在播放控制台上创建新的应用程序项目,因为播放控制台可能会混合两个键。
image
答案 14 :(得分:0)
在这个问题上浪费了几个小时之后,下面的解决方案对我有用-
当您创建签名包时,它被保存到某个位置, 然后当它被拒绝时, 你又去制作新的签名包, 嗯,这就是错误发生的地方。
请参阅现在您将创建另一个已签名的捆绑包, 您在另一个文件夹上签名,假设上一个文件夹是上次制作的, , 确保您将签名密钥存储在“相同文件夹”中, 无需制作任何新的签名密钥路径, 只需使用您第一次使用时使用的路径。
See this image, use the same path which you have used during first time
使用与您第一次使用相同的 JKS 文件。 现在,当您制作捆绑文件时, 它将拥有正确的密钥。
谢谢!!!