我知道这个问题之前已经提出过,但我无法让它工作......我正在尝试在我的颤振应用程序中显示一个简单的谷歌地图。
为此,我遵循了几个教程,例如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(我确定它已激活,因为我可以在谷歌平台的“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
在重新构建我的应用程序之前运行,但它并没有改变任何东西。
此外,我似乎看不到有关该应用程序的任何日志。
任何指针都会节省我的时间。谢谢!