You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter框架集成Google Maps无报错但地图不显示求助

Flutter Google Maps 无法显示排查方案

针对你遇到的Flutter集成Google Maps无报错但地图不显示的问题,结合你Kotlin集成正常的情况,可按以下步骤排查:

  • 检查Flutter插件配置

    1. 确认pubspec.yaml中已正确添加google_maps_flutter依赖,且版本与你的Flutter SDK兼容,执行flutter pub get确保依赖安装完成。
    2. 检查android/local.properties中是否配置了正确的Google Maps API密钥,格式为MAPS_API_KEY=your_api_key,同时在android/app/build.gradle中是否引用了该密钥:
      defaultConfig {
          manifestPlaceholders = [
              'googleMapsApiKey': project.property('MAPS_API_KEY')
          ]
      }
      
    3. 验证Flutter代码中是否正确传入API密钥(部分版本插件需在初始化时指定,或通过AndroidManifest中的meta-data引用)。
  • API密钥权限与限制

    1. 登录Google Cloud控制台,确认你的API密钥已启用Maps SDK for Android服务。
    2. 检查密钥的应用限制:若设置了包名+签名限制,需确保Flutter项目的包名与Kotlin项目一致,且debug/release签名证书的SHA-1值已添加到密钥限制中(Flutter的debug签名默认路径为~/.android/debug.keystore,可通过keytool -list -v -keystore ~/.android/debug.keystore获取SHA-1)。
  • Flutter地图组件布局与初始化

    1. 确保GoogleMap组件被赋予足够的布局空间,例如用Expanded包裹或设置固定宽高,避免因尺寸为0导致不显示:
      Expanded(
        child: GoogleMap(
          initialCameraPosition: CameraPosition(
            target: LatLng(37.422, -122.084),
            zoom: 14,
          ),
        ),
      )
      
    2. 检查是否在代码中正确初始化地图控制器,且未通过条件渲染逻辑意外隐藏地图组件。
  • 权限与网络检查

    1. 确认设备已联网,Google Maps需要网络加载地图瓦片。
    2. 若你的地图需要位置服务,需在Flutter中动态申请位置权限(即使AndroidManifest已声明),可使用permission_handler插件实现权限申请。
  • 日志细节排查
    从你提供的日志截图中,重点查找以下关键词:API key not found、Maps SDK not enabled、Signature not valid,这些通常是地图不显示的核心原因。

内容的提问来源于stack exchange,提问作者Newton Wamiti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 23:57:08