高德 amap_flutter_search 如何使用
我在使用高德的amap_flutter_search插件时遇到了一些问题,不知道如何正确调用搜索功能。具体来说,我已经按照文档配置了API Key,但是调用POI搜索时总是返回空结果。请问这个插件需要额外设置什么参数吗?能否提供一个完整的搜索示例代码?另外,这个插件是否支持周边搜索和关键字搜索同时使用?
2 回复
使用高德 amap_flutter_search 插件,首先在 pubspec.yaml 中添加依赖。然后导入包,调用 AMapSearch 类进行搜索,如关键字搜索、周边搜索等。需配置高德开放平台 API Key 并处理权限。
更多关于高德 amap_flutter_search 如何使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
高德 amap_flutter_search 是 Flutter 插件,用于实现高德地图的搜索功能(如地点搜索、输入提示等)。以下是基本使用步骤:
1. 添加依赖
在 pubspec.yaml 中添加:
dependencies:
amap_flutter_search: ^1.0.0 # 检查最新版本
运行 flutter pub get。
2. 配置高德 Key
- 在高德开放平台申请 Android/iOS Key,并绑定 App 包名。
- Android:在
AndroidManifest.xml的<application>内添加:<meta-data android:name="com.amap.api.v2.apikey" android:value="你的高德Key"/> - iOS:在
Info.plist中添加:<key>AMapApiKey</key> <string>你的高德Key</string>
3. 基本使用示例
关键字搜索
import 'package:amap_flutter_search/amap_flutter_search.dart';
// 初始化(建议在App启动时调用一次)
AMapFlutterSearch.setApiKey("你的高德Key");
// 执行搜索
void searchKeyword(String keyword) async {
var result = await AMapFlutterSearch.searchKeyword(
keyword,
city: '北京', // 可选城市限制
);
if (result.code == 1000) {
// 成功:result.pois 为搜索结果列表
for (var poi in result.pois) {
print('名称: ${poi.title}, 地址: ${poi.address}');
}
} else {
print('搜索失败: ${result.message}');
}
}
输入提示
void getInputTips(String keyword) async {
var result = await AMapFlutterSearch.getInputTips(
keyword,
city: '北京',
);
if (result.code == 1000) {
for (var tip in result.tips) {
print('提示: ${tip.name}');
}
}
}
4. 注意事项
- 确保网络权限已开启。
- 搜索结果为
POI对象,包含名称、坐标、地址等字段。 - 详细参数(如搜索类型、区域限制)参考高德官方文档。
通过以上步骤即可快速集成搜索功能。

