Flutter - Google 地图不显示

Flutter - Google map does not show

我知道之前有人提出过这个问题,但我无法解决... 我正在尝试在我的 flutter 应用程序中显示一个简单的 google 地图。

为此,我遵循了几个教程,例如 https://codelabs.developers.google.com/codelabs/google-maps-in-flutter/ or https://pub.dev/packages/google_maps_flutter

所以我的代码完全一样。尽管如此,我还是会告诉你:

首先,我激活了 Android 的 Maps SDK 和 iOS 的 Maps SDK。我可以在我的面板中看到它们已启用。

然后,我只需添加 api_key(我确定它已激活,因为我可以在 google 平台的 "Maps SDK for Android" 的凭据选项卡中看到它)

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.google_maps_in_flutter">
<application
    android:name="io.flutter.app.FlutterApplication"
    android:label="google_maps_in_flutter"
    android:icon="@mipmap/ic_launcher">

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

    <activity
        android:name=".MainActivity"
        android:launchMode="singleTop"
        ...

我为 iOS 做了完全相同的事情。

在pubspec.yaml中添加如下依赖:

dependencies:
  flutter:
    sdk: flutter
  google_maps_flutter: ^0.5.11
  cupertino_icons: ^0.1.2

我也试了最后一个版本google_map_flutter(0.5.21+15),没有任何改变。

就是这样,main.dart 与教程完全一样:

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> {
  GoogleMapController mapController;

  final LatLng _center = const LatLng(45.521563, -122.677433);

  void _onMapCreated(GoogleMapController controller) {
    mapController = controller;
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Maps Sample App'),
          backgroundColor: Colors.green[700],
        ),
        body: GoogleMap(
          onMapCreated: _onMapCreated,
          initialCameraPosition: CameraPosition(
            target: _center,
            zoom: 11.0,
          ),
        ),
      ),
    );
  }
}

然后我 运行 我的应用程序......没有显示地图。

我可以看到应用栏,但在它下面,只有一个空白区域。 我什至没有显示 google 徽标,正如我在其他一些问题中看到的那样。

我尝试 运行 flutter clean 在构建我的应用程序之前,但它没有改变任何东西。

此外,我似乎看不到有关该应用程序的任何日志。

任何指示都会节省我的时间。 谢谢!

感谢@no_fate,我只需要升级 google 播放服务的版本。

如果您遇到我的情况,运行 在任何设备模拟器的最新版本上运行您的应用,看看问题是出自您的实际 phone 还是应用本身。

在我的情况下,我的关键是问题,我的 Android 地图 SDK 处于非活动状态。激活后,地图显示

激活前往google云平台->Google地图->Android

的地图SDK