在 Google Play 的独立版本上反应原生地图崩溃
Posted
技术标签:
【中文标题】在 Google Play 的独立版本上反应原生地图崩溃【英文标题】:react native maps crashes on Standalone version from Google Play 【发布时间】:2021-04-13 06:57:27 【问题描述】:SDK 版本:40.0.0 平台(android/ios/web/all):Android 你好 我在我的项目中使用 react-native-maps。我的项目是使用 Expo SDK 37 开发的,并且运行良好。我最近尝试运行“expo-upgrade”命令升级到 Expo SDK 40。我修复了在开发模式下发现的一些错误,然后我执行了命令:“expo build: android”,选择生成 Bundle 而不是 APK ,然后我得到了我的捆绑文件。我以内部测试发布模式将该捆绑文件上传到 Google Play 控制台。当我从 Google Play 下载内部测试版本并进入地图页面时,应用程序崩溃并立即重新加载,我能够看到地图屏幕。 显示问题的视频:https://youtu.be/MqfYoOZcmio Ps:在升级到 Expo SDK 40 之前,它与 Expo SDK 37 工作正常 我的 app.json:
…
"android":
"package": "package.name",
"versionCode": 123,
"config":
"googleMaps":
"apiKey":"MY_KEY"
,
"packagerOpts":
"config": "metro.config.js",
"sourceExts": ["js", "jsx", "svg"]
我什至尝试在 Google API Manager 和新密钥上创建一个新项目,传递项目的包名称并激活 Google Maps SDK for android,但它不起作用。我将 Google 的登录 SHA-1 密钥从 Google Play 传递给项目,但没有解决问题。
我试图从世博会中退出,然后我为我的项目进行了本机配置,然后它像以前一样工作正常【问题讨论】:
【参考方案1】:升级到 SDK 40 后我遇到了同样的问题, 就我而言,问题出在自定义 Marker 中。 同样在 SDK 40 上的另一个项目中,我没有遇到此问题,但我正在从 uri 加载自定义标记,如下所示 icon=uri: some_url
错误
<MapView.Marker
title="Your Title"
description="Your Description"
icon=require('../Images/mapPin.png') <== PROBLEM
draggable
coordinate=
latitude: coords.latitude,
longitude: coords.longitude,
/>
正确
<MapView.Marker
title="Your Title"
description="Your Description"
draggable
coordinate=
latitude: coords.latitude,
longitude: coords.longitude,
>
<Image source=require('../Images/mapPin.png') style=width:50, height:50 />
</MapView.Marker>
【讨论】:
以上是关于在 Google Play 的独立版本上反应原生地图崩溃的主要内容,如果未能解决你的问题,请参考以下文章
错误记录Google Play 上架报错 ( 此版本不符合 Google Play 关于提供 64 位版本应用的要求 )
(React Native) 如何将 App Signing Key 上传到 Google Play Console?
反应原生:上传 apk 后,Play 商店有权限问题(CAMERA,RECORD_AUDIO,...)
在独立的 Android 应用程序上使用 expo-auth-session 进行 Google 登录,浏览器关闭但没有任何反应
Maps SDK for Android v.3.0.0 BETA "是否可以在没有Google Play服务的设备上运行?