高德flutter插件如何使用

我在集成高德地图的Flutter插件时遇到了一些问题:

  1. 如何正确配置Android和iOS的API密钥?官方文档的步骤不太清晰。
  2. 初始化插件时总报错"INVALID_USER_KEY",但确认密钥已正确配置。
  3. 在地图上添加自定义标记点时,图标显示异常或位置偏移。
  4. 能否实现在Flutter中动态调整地图中心坐标?官方示例只有静态设置。
  5. 路径规划功能调用后没有回调响应,是否需要特殊权限配置?

希望有经验的朋友能分享一下具体的实现代码和注意事项,谢谢!

2 回复

高德Flutter插件使用步骤:

  1. 在pubspec.yaml中添加依赖:amap_flutter_mapamap_flutter_location
  2. 获取高德开放平台API Key并配置Android和iOS端。
  3. 在代码中引入插件并初始化地图或定位功能。
  4. 根据文档调用相应API实现地图显示或定位。

更多关于高德flutter插件如何使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


高德Flutter插件(amap_flutter_map)提供了地图显示、标记、交互等功能。以下是基本使用方法:

1. 添加依赖

pubspec.yaml 中添加:

dependencies:
  amap_flutter_map: ^3.0.0 # 检查最新版本

2. 配置权限(Android/iOS)

Android

  • AndroidManifest.xml 添加网络权限和定位权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
  • 添加高德Key(在 application 标签内):
<meta-data
  android:name="com.amap.api.v2.apikey"
  android:value="你的高德Key"/>

iOS

  • Info.plist 中添加:
<key>NSLocationWhenInUseUsageDescription</key>
<string>需要定位权限</string>
  • AppDelegate.swiftdidFinishLaunchingWithOptions 中设置Key:
AMapServices.shared().apiKey = "你的高德Key"

3. 基本使用

import 'package:amap_flutter_map/amap_flutter_map.dart';

// 在Widget中使用
AMapWidget(
  apiKey: '你的高德Key', // 如果已在原生配置可省略
  onMapCreated: (controller) {
    // 地图创建回调
  },
  markers: Set<Marker>.from([
    Marker(
      position: LatLng(39.909, 116.397), // 经纬度
      icon: BitmapDescriptor.defaultMarker,
    ),
  ]),
)

4. 常用功能

  • 定位:结合 amap_flutter_location 插件实现
  • 路线规划:需通过高德Web API实现后叠加到地图
  • 自定义图层:使用 BitmapDescriptor 自定义标记图标

注意事项

  1. 高德Key需分别申请Android和iOS版本
  2. 首次使用需动态申请定位权限
  3. 真机测试时确保网络通畅

建议查看官方文档获取完整示例和更新信息。

回到顶部