React Native的Android App Bundle:您上传了APK或Android App Bundle,其中某些文件的签名信息无效或缺失

时间:2019-12-28 11:03:59

标签: android react-native android-studio

我正在尝试首次将应用发布到Google Play商店。 我已选择使用Google Play签名。我知道我正在使用正确的密钥对Android App Bundle进行签名,因为当我使用其他密钥进行上传时,控制台会告诉我使用具有特定SHA1标识符的其他密钥进行上传。 但是,当我使用正确的密钥上传时,会出现以下错误:

  

您上传的APK或Android应用程序捆绑包无效或丢失   为其某些文件签名信息。

我正在使用Android Studio构建应用程序,如下所示: 生成>生成签名包/ APK> Android应用包>选择我的密钥库并输入密码>版本>完成

该应用程序是使用独立的Expo / ExpoKit构建的React Native应用程序。上载到Apple App Store正常,我在Play Store中只有问题。 我想念什么?

更新1 :我现在已从Google Play完全删除了该应用,并创建了一个新应用。这次选择加入Google Play签名并上传了已签名的APK。还是一样的错误。

更新2 :尝试使用全新的密钥库和密钥。还是一样。

3 个答案:

答案 0 :(得分:0)

制作APK或AAB时,请确保选择上载作为关键别名,请参见图片 参考。

enter image description here

答案 1 :(得分:0)

可能不是您要寻找的答案,但是您尝试使用命令行来生成密钥库,而不是使用Android Studio。

如果这不起作用,那么我将开始研究模块,尤其是博览会模块,因为它们在过去几周中给我带来了一些痛苦。

React native guide on publishing for Android

答案 2 :(得分:0)

即使不是原始问题的解决方案,也要在这里回答我自己的问题,更多关于ExpoKit的宣泄。

我现在从我们的应用程序中完全删除了ExpoKit。以前,我们需要从托管的Expo工作流程中弹出ExpoKit,因为我们需要其他尚不支持的本地功能(例如WebRTC)。但是,说实话,我们可能应该弹出 React Native而不是半最佳的ExpoKit。

如果可以使用托管工作流程,那就做吧!无疑使某些工作变得容易。但是,如果您需要其他不受支持的本机功能,请帮自己一个忙,只要可以轻松地恢复裸露的RN。

因为,从Expo Kit 转到裸机RN毫无魅力。必须启动一个全新的RN项目,复制JavaScript,一个接一个地重新安装模块,修复一些本机问题,等等-两天的工作只是为了使应用程序重新运行。

但是,在完成所有工作之后,现在我们使用相同的应用程序,只是没有ExpoKit。

优点:

  • 将应用程序上传到Google Play终于可以了。
  • 将应用下载大小减少了70%(!)
  • 易于通过RN 0.60自动链接(即使ExpoKit现在也支持最新的SDK iirc-更新Expo SDK本身也是一门完整的科学)
  • 我们仍然可以使用通过unimodules像expo-secure-store一样真正学习过的Expo模块。
  • 可能是安慰剂,但应用程序的性能似乎也有所提高。
  • 发布应用的构建时间在iOS上增加了约50%,在Android上增加了60%
  • 应用程序的启动似乎正在快速进行-以前在iPhone 11 Pro上启动大约需要2到3秒钟,而现在只需几毫秒。

缺点:到目前为止找不到。