该应用程序使用 Maps SDK 内置了 Google Map。点击地图工具栏上的一个图标应该会启动外部地图应用程序。
在 targetSDKVersion=29 之前,外部地图应用程序的启动一直运行良好。当targetSDKVersion=30时,启动失败,屏幕显示如下信息:Google Maps is not installed or is disabled。
这是为什么?
该应用程序使用 Maps SDK 内置了 Google Map。点击地图工具栏上的一个图标应该会启动外部地图应用程序。
在 targetSDKVersion=29 之前,外部地图应用程序的启动一直运行良好。当targetSDKVersion=30时,启动失败,屏幕显示如下信息:Google Maps is not installed or is disabled。
这是为什么?
编辑:这个问题应该在库的 17.0.1 版本中得到修复。您可以参考发行说明。
我在 Google Maps 的开发者关系部门工作。此问题是由于 Android 11 中引入的包可见性要求造成的。您可以在此处了解更多信息。本质上,您的应用程序需要在AndroidManifest.xml
其正常运行所需的所有包中声明。
要解决此问题,您需要将 Google 地图包“com.google.android.apps.maps”添加为条目中的AndroidManifest.xml
<queries>
条目:
<manifest package="com.your.package">
<queries>
<package android:name="com.google.android.apps.maps" />
</queries>
...
</manifest>
您也可以参考我们的示例。