Flutter App 中的 Google 地图未显示

Posted

技术标签:

【中文标题】Flutter App 中的 Google 地图未显示【英文标题】:Google Map in Flutter App is not showing up 【发布时间】:2020-04-10 11:39:13 【问题描述】:

在我的 Flutter 应用程序中集成一个简单的 GoogleMap 时遇到问题。 我在我的清单文件中正确插入了 API 密钥,并将库插入到应用程序中。 但是模拟器只是显示一个空白页。到目前为止,我没有做任何特别的事情;只是想创建一个 GoogleMap。

这是我在应用程序中使用的代码:

return Stack(
 children: <Widget>[
   GoogleMap(initialCameraPosition: CameraPosition(target:
   LatLng(-33.870840,151.206286),
   zoom: 12)
   )
 ], );

模拟器显示的内容:

控制台的第一行(我认为有特殊含义):

E/flutter (5736): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] 未处理异常:PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: plugins .flutter.io/google_maps

我尝试了几种解决方法,但最终出现了更多错误。期待您的回答!

【问题讨论】:

【参考方案1】:

我尝试在一个新项目中添加Google Map,并且能够在模拟器上成功看到它。我一步一步地按照this 文章并使用您的代码 sn-p 显示地图并且它有效。

使用的完整代码:

import 'dart:async';

import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget 
  @override
  _MyAppState createState() => _MyAppState();


class _MyAppState extends State<MyApp> 
  Completer<GoogleMapController> _controller = Completer();

  @override
  Widget build(BuildContext context) 
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Maps Sample App'),
          backgroundColor: Colors.green[700],
        ),
        body: Stack(
      children: <Widget>[
      GoogleMap(initialCameraPosition: CameraPosition(target:
      LatLng(-33.870840,151.206286),
        zoom: 12)
    )
    ],
        )
      ),
    );
  

注意几点:

    当您为其生成密钥时,请仔细检查该 api 是否已启用(android 版 Maps SDK)。 在您交叉检查以确认您拥有最新的依赖项后,请执行 flutter clean

希望这会有所帮助。

【讨论】:

谢谢您,它现在可以工作了!不完全知道出了什么问题,但我认为这是因为我没有在我的 pubspec 文件中写下软件包版本的整数(只有 0.5.21 而不是 0.5.21+15)。还使用了 Flutter Clean,所以也许这对我有帮助。

以上是关于Flutter App 中的 Google 地图未显示的主要内容,如果未能解决你的问题,请参考以下文章

Flutter Android App 在使用谷歌地图时崩溃

如何在 Flutter 中的 Google 地图上绘制多边形并获取其中的所有 POI?

Flutter iOS Map 样式未应用

即使在 Flutter 中使用正确的 SHA1 密钥,Google 地图也无法在发布版本中工作

Flutter 中的 Google Maps 相机位置更新问题

google_maps_flutter 或任何其他 Flutter 地图插件是不是支持谷歌地图的 kml 文件?