Google 地图适用于 Android Release APK,但不适用于 AAB

fav*_*sys 6 android google-maps-api-2 xamarin.android

我有一个使用 Xamarin.Android 开发的应用程序,最近我向其中添加了一张地图。我在开发者控制台中创建了我的密钥,并使用我的指纹限制了它的调试和发布。在调试中,地图工作正常。

如果我构建发布应用程序的 APK 并对其进行签名(使用我用于获取指纹的证书)并将应用程序部署到我的手机上,那么地图就可以正常工作。

如果我构建一个 AAB (AppBundle) 并使用相同的证书对其进行签名,然后在 Play 商店上发布该应用程序并在手机上下载该应用程序,我会看到一个空白屏幕,只显示 Google 并带有缩放按钮。

当然,Google 现在希望您上传 AAB,而不是 APK,但我无法让地图正常工作。这是相同的应用程序,相同的代码,相同的证书,在同一部手机上进行测试,唯一的区别是构建时选择 apk 或捆绑包。

有人遇到过这个问题吗?

Leo*_*SFT 5

问题是文档https://docs.expo.io/versions/latest/sdk/map-view/#deploying-to-a-standalone-app-on-android提到你必须获得Google证书指纹通过在电脑中运行命令,但事实是,您必须从应用程序的开发人员游戏商店页面获取该证书。

你可以看到:

如果您启用了 Google Play 的应用程序签名服务,则需要在生产环境中获取其应用程序签名证书,而不是 expo fetch:android:hashes 返回的上传证书。您可以通过从 Play Console -> 您的应用程序 -> 发布管理 -> 应用程序签名获取签名,然后转到 API 仪表板 -> 凭据并将签名添加到现有凭据中来完成此操作。