搜索插件、代码仓与 APP 分类

flutter_nominatim 封面
插件详情v0.0.1+2

flutter_nominatim

一个用于免费地理编码和地点搜索的 Flutter 插件,使用 OpenStreetMap 的 Nominatim 服务,内置优化且无需 API 密钥

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
13
喜欢数
21
Pub 分数
150

安装插件

flutter pub add flutter_nominatim

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

flutter_nominatim 是一个 Flutter 插件,可使用 OpenStreetMap 的 Nominatim 服务实现免费的地理编码和地点搜索。它提供了内置的性能和可靠性优化,无需 API 密钥。该插件支持 Android、iOS、Web、macOS、Windows 和 Linux 等多个平台,非常适合需要地址查找和位置服务的跨平台应用。它通过直观的方法简化了地理数据的搜索和检索集成。

适合场景

  • 应用中的地址搜索
  • 地理编码用户输入
  • 位置自动补全
  • 基于位置的服务
  • 地图标记放置
  • 离线可用的位置查找

主要特点

  • 无需 API 密钥
  • 内置请求优化
  • 跨平台支持
  • 简单 API 接口
  • 实时地点建议
  • 基于OpenStreetMap

适合对象

  • 寻求免费地理编码的开发者
  • 需要地点搜索功能的应用
  • 项目避免第三方API成本
  • 跨平台位置功能
  • 原型设计基于位置的应用程序

使用建议

  • Nominatim 的速率限制
  • 依赖于 OpenStreetMap 数据质量
  • 不适合高吞吐量生产环境使用
  • 仅限公共 Nominatim 实例
  • 需要互联网连接
  • 高峰使用期间可能出现延迟

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

GitHub code size Pub License: MIT package publisher

flutter_nominatim

Completely Free & Open Source! Unlike other geocoding services, Nominatim is 100% free to use with NO API key required. You can start implementing location features in your app immediately without any payment or API key setup.

Example Screenshots 📸

Place Search Convert LatLng to Address Convert Address to LatLng
Auto-complete search with realtime results Convert coordinates to human-readable address Convert address to geographical coordinates
Key Benefits
Feature Description Benefit
💰 Free Forever No API key, no pricing tiers Save hundreds of dollars compared to paid geocoding services
🔑 No Authentication No API keys or tokens needed Quick implementation without setup hassle
🌍 Global Coverage Worldwide address database Works everywhere your app does
🚀 Easy Integration Simple API methods Get started in minutes
⚡ Performance Optimized Built-in rate limiting & caching Smooth user experience

Features Overview

1. Place Search 🔍
  • Auto-complete with debouncing
  • Real-time results as you type
  • Most relevant matches
  • Rich place details
  • Polygon Boundaries for places
2. Geocoding Services
Service Description Example
Forward Geocoding Convert address to coordinates "London Bridge" → (51.5074, -0.1278)
Reverse Geocoding Convert coordinates to address (51.5074, -0.1278) → "London Bridge, London, UK"
3. Built-in Optimizations
  • Automatic request debouncing
  • Rate limit handling
  • Error management
  • Input validation

Quick Start

Installation
dependencies:
  flutter_nominatim: ^1.0.0
Basic Usage
// Initialize
final nominatim = Nominatim.instance;

// Search places
final results = await nominatim.search("London");

// Get address from coordinates
final address = await nominatim.getAddressFromLatLng(51.5074, -0.1278);

// Get coordinates from address
final coordinates = await nominatim.getLatLngFromAddress("London Bridge");

Implementation Examples

Auto-complete Search Widget
TextField(
  controller: searchController,
  decoration: const InputDecoration(
    hintText: 'Search places...',
    prefixIcon: Icon(Icons.search),
  ),
  onChanged: (query) {
    if (query.length >= 3) {
      nominatim.search(query).then((results) {
        // Handle results
      });
    }
  },
)

Usage Guidelines

Input Constraints
Parameter Range/Format Example
Latitude -90 to 90 51.5074
Longitude -180 to 180 -0.1278
Search Query Min 3 characters "London"
Rate Limiting
  • Maximum 1 request per second
  • Built-in request management
  • Automatic request queuing

Why It's Free & Open

Nominatim is powered by OpenStreetMap, the world's largest collaborative mapping project. This means:

  • 🆓 Completely Free: No hidden costs or subscription fees
  • 🔓 No API Key Required: Start developing immediately
  • 🌐 Community Driven: Regular updates from global contributors
  • 📈 Constantly Improving: Database grows and improves daily

Attribution Requirements

When using this plugin, include:

© OpenStreetMap contributors

Support & Contribution

We welcome:

  • 🐛 Bug reports
  • 💡 Feature suggestions
  • 🤝 Pull requests
  • 📖 Documentation improvements

License

MIT License - feel free to use in your projects!

Visitors Count

Loading

所属分类

依赖

依赖清单 1 项

源码仓库

使用此插件的项目

暂无相关数据。