Google 地图 - 您应用的 AndroidManifest.xml 中的必需元数据标签不存在

Posted

技术标签:

【中文标题】Google 地图 - 您应用的 AndroidManifest.xml 中的必需元数据标签不存在【英文标题】:Google Maps - A required meta-data tag in your app's AndroidManifest.xml does not exist 【发布时间】:2021-08-30 21:21:16 【问题描述】:

我想在我的 android 应用中实现 Google Map,我只是按照 Google Maps Platform 的说明进行操作,但没有成功。我不知道为什么元数据不存在,而我已经在清单中声明了它:

AndroidManifest.xml

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:usesCleartextTraffic="true"
        tools:ignore="AllowBackup"
        tools:targetApi="m">

        <activity android:name="some.Activity"></activity>


        <meta-data
            tools:replace="android:value"
            android:name="com.google.android.gms.version"
            android:value="$MAPS_API_KEY" />
</application>

local.properties

MAPS_API_KEY=HereIsTheSecretAPIstored

build.gradle (:app)

plugins 
    id 'com.google.secrets_gradle_plugin' version '0.5'

服务地图版本:

implementation "com.google.android.gms:play-services-maps:17.0.1"

堆栈跟踪:

Caused by: com.google.android.gms.common.GooglePlayServicesMissingManifestValueException: A required meta-data tag in your app's AndroidManifest.xml does not exist.  You must have the following declaration within the <application> element:     <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
        at com.google.android.gms.common.GooglePlayServicesUtilLight.isGooglePlayServicesAvailable(com.google.android.gms:play-services-basement@@17.5.0:17)

谁能帮帮我?

【问题讨论】:

【参考方案1】:

经过一番努力,我终于可以用这个解决方案解决问题了:

    更改元数据并移至活动标记的顶部。

来自

<meta-data
            tools:replace="android:value"
            android:name="com.google.android.gms.version"
            android:value="$MAPS_API_KEY" />

<meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="$MAPS_API_KEY" />

2 另外,我忘记在 Google Console 中启用 Maps SDK for Android,所以我启用了它。

【讨论】:

以上是关于Google 地图 - 您应用的 AndroidManifest.xml 中的必需元数据标签不存在的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 应用程序中打开 Google 地图视图

将Google地图数据导入iPhone

如何在 Eclipse 中使用 Legacy Apache 以支持 Android M

如何验证您在Google地图上的任务纬度和经度上的位置

Google新闻站点地图语法

iOS 版 Google 地图链接