Flutter GPS 任务应用
此 Flutter 应用演示了如何使用 Google Maps 插件来显示地图及用户的当前位置,并根据坐标获取城市名称。
代码概述
主代码分为几个组件
MapScreen
MapScreen小部件是一个StatefulWidget,它显示 Google 地图和用户的城市名称。- 它利用
GoogleMapViewModel加载用户的当前坐标,并使用geocoding获取城市名称。 - UI 由 Google 地图和一个显示用户城市名称的文本字段组成。
- 地图上标记了用户的位置,点击标记会打开一个对话框显示坐标。
GoogleMapViewModel
GoogleMapViewModel负责与 Google Maps API 交互并获取用户位置。- 它使用
geolocator包来检查和请求位置权限,并获取用户的当前位置。 loadCurrentUserCoordinates函数返回一个LatLng对象,包含用户的当前纬度和经度。
GoogleMapWidget 和 MarkerCoordinatesDialog
GoogleMapWidget是一个无状态小部件,它使用google_maps_flutter包显示 Google 地图。- 它还处理用户当前位置的标记,点击该标记可以使用
MarkerCoordinatesDialog小部件在对话框中显示坐标。
main.dart
- 应用程序的入口点在
main.dart中,它初始化应用程序并设置 MaterialApp。
入门
- 克隆此存储库。
- 确保您已安装 Flutter 和 Dart。
- 运行
flutter pub get以安装所需的依赖项。 - 使用
flutter run运行应用程序。
屏幕截图
这是应用程序运行的截图

笔记
- 如果您打算在真实设备上使用此应用或将其发布,请务必将您的 Google Maps API 密钥添加到您的 Flutter 项目中。
贡献
欢迎通过打开 issue 或创建 pull request 来为本项目做出贡献。
许可证
本项目根据 MIT 许可证授权 – 更多详情请参阅 LICENSE 文件。