Geocoder Buddy 是一个 Flutter 包,可实现正向和反向地理编码以及地址搜索,无需 API 密钥。它通过利用多个平台的内置地理位置服务,简化了基于位置的功能。适用于需要快速解析地址或进行坐标转换的应用程序,可在 Android、iOS、Web、macOS、Windows 和 Linux 上无缝运行。该包轻量且注重隐私,避免为地理编码任务引入外部依赖。
适合场景
从坐标查找地址
地址坐标转换
离线友好的位置搜索
跨平台地理位置功能
注重隐私的应用程序开发
主要特点
无需 API 密钥
支持正向和反向地理编码
适用于所有主要平台
轻量且快速
内置地址搜索
无外部服务依赖
适合对象
具有定位需求的移动和网页应用
注重用户隐私的应用程序
开发者避免 API 成本
原型化位置功能
简单的地理编码需求
使用建议
限于基本地理编码精度
依赖设备的原生地理位置服务
不适合高精度企业使用
无实时更新
可能因平台实现而异
原始 README
以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。
Features
Easy To Use
Fast & Secure
No Api Key Required
More Detailed Data
Search Locations Without Api Key
Getting Started
Run This Command in Terminal or Install in Your Way
flutterpubgetgeocoder_buddy
Searching Location
// GBSearchData Class Porvided By geocoder_buddyList<GBSearchData> data = awaitGeocoderBuddy.query(query);
GBSearchData Class
int placeId;
int id;
List<String> boundingbox;
String lat;
String lon;
String displayName;
int placeRank;
double importance;
Converting GBSearchData To GBData
// GBData Class Porvided By geocoder_buddyGBData data = awaitGeocoderBuddy.searchToGBData(GBSearchData data);
Getting Details From Latitude/Longitude
GBLatLng position = GBLatLng(38.8951,-77.0364);
GBData data = awaitGeocoderBuddy.findDetails(position);
GBData Class
int placeId;
String osmType;
int id;
String lat;
String lon;
int placeRank;
double importance;
String displayName;
// Address Class Porvided By geocoder_buddyAddress address;
List<String> boundingbox;