【问题标题】:Flutter - Google map does not show颤振 - 谷歌地图不显示
【发布时间】:2020-04-03 17:48:09
【问题描述】:

我知道这个问题之前已经提出过,但我无法让它工作...... 我正在尝试在我的颤振应用程序中显示一个简单的谷歌地图。

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

所以我的代码完全一样。不过我会告诉你的:

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

然后,我只需添加 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,
          ),
        ),
      ),
    );
  }
}

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

我可以看到应用栏,但在其下方,只是一个空白区域。 我什至没有像在其他一些问题中看到的那样显示谷歌徽标。

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

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

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

【问题讨论】:

  • 添加此包后您是否重新启动了您的应用程序?您还在哪个模拟器中运行您的应用程序?
  • 是的,我已经重新启动了一切。所以我直接在我的设备上运行该应用程序(荣誉 7 和 android 6)。然后我尝试使用像素 2 模拟器,它正在工作。我不明白为什么它在我的设备上不起作用,因为 minSdkVersion 设置为 16...
  • 您在控制台中看到任何错误吗?
  • 无...纯空白
  • 您的 Honor 设备上有 google play 服务吗?

标签: android google-maps flutter google-maps-flutter


【解决方案1】:

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

激活转到谷歌云平台 -> Google Map -> Map SDK for Android

【讨论】:

    【解决方案2】:

    感谢@no_fate,我只需要升级我的 google play services 的版本。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多