android - 博览会弹出后 android .keystore 的问题
问题描述
我使用 expo 管理的工作流程构建了一个应用程序,使用 expo 创建了帐户,并让 expo 处理所有密钥库信息,即使用 expo 创建的密钥库凭据并上传到 Play 商店,但由于某种原因我的应用程序被拒绝了。我解决了这个问题,但我退出了 expo(托管 -> 裸工作流)并设法解决了此后的所有错误。我搜索了上传反应原生应用程序并按照以下步骤操作:
安装了所需的jdk版本并移动到jdk所在的路径
创建了新的密钥库 sudo keytool -genkey -v -keystore XXX.keystore -alias XXX-upload -keyalg RSA -keysize 2048 -validity 10000
使用与从 expo 生成的密钥库相同的密码输入所需的信息
将密钥库文件放在 android>app 文件夹中
按照发布的建议,对 android>app 和 gradle.properties 下的 build.gradle 进行了更改
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 } }
还signingConfig signingConfigs.release
gradle.properties 添加:
MYAPP_UPLOAD_STORE_FILE=XXX.keystore
MYAPP_UPLOAD_KEY_ALIAS=XXX-upload
MYAPP_UPLOAD_STORE_PASSWORD=XXX
MYAPP_UPLOAD_KEY_PASSWORD=XXX
- 在所有这些步骤之后,我从 android>app>src>main>assets>index.android.bundle 中删除了捆绑包,并使用 cd android 移动到我的项目的 android 文件夹并运行 ./gradlew clean 然后运行 ./gradlew assembleRelease 但得到了错误 :
任务:app:signReleaseBundle 失败
FAILURE:构建失败并出现异常。
- 出了什么问题:任务“:app:signReleaseBundle”执行失败。
执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade 时发生故障无法从存储“XXX.keystore”读取密钥 XXX-upload:获取密钥失败:给定最终块未正确填充。如果在解密期间使用了错误的密钥,则可能会出现此类问题。
在stackoverflow上搜索了这个。甚至再次重新创建密钥库,但没有帮助。什么可以解决这个问题?
更新:我为商店密码和密钥密码使用了相同的密码,我能够创建应用程序包。但是当我提交应用程序以供发布时:它说:您的 Android App Bundle 使用错误的密钥签名。确保您的 App Bundle 使用正确的签名密钥进行签名,然后重试。您的 App Bundle 应该使用带有指纹的证书进行签名:SHA1:但用于签署您上传的 App Bundle 的证书具有指纹:SHA1:
这是因为我更改了我的密钥库吗?我们如何解决这个问题?
即使通过 expo 管理帐户将密钥库恢复到原始密钥库后,我也能够创建 .aab 但播放商店不接受该应用程序。生成错误密钥的相同错误
解决方案
您必须请求 Google Play 商店团队更改密钥库相关问题。但是对于 2021 年 8 月 1 日之后上传的应用,google 有一个非常漂亮的解决方案。它允许您创建上传密钥并将其上传到 Play 商店。Google 自己管理您签名的应用程序包。
推荐阅读
- python - 如何打印特定于键的所有值?
- java - 如何使用 ActionListener 从按钮调用面板
- python - 从python 3中的for循环返回所有输出
- python - 如何使用 GRU RNN 正确训练和预测生物量等价值?
- react-native - 在屏幕顶部的视图中居中文本(react-native)
- javascript - 单击动态创建的按钮时,如何在嵌入式 mp4 上暂停播放?
- java - 如何使用spring-data-rest endPoint在angular7中发出http补丁请求?
- reactjs - 在反应选择中重新排序多选
- python - 如何拆分测试和训练 npzfiles 数据?
- python - 无论顺序如何,如何逐行比较两个文件?