# GPSTools **Repository Path**: firexmoon/gpstools ## Basic Information - **Project Name**: GPSTools - **Description**: GPSTools是一款Android平台上的定位信息监测工具,可以实时获取并显示设备的卫星、网络定位信息等详细数据。 - **Primary Language**: Kotlin - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-21 - **Last Updated**: 2025-12-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GPSTools GPSTools是一款Android平台上的定位信息监测工具,可以实时获取并显示设备的卫星、网络定位信息等详细数据。 ## 功能特性 - **双模式界面**:提供专业模式和码表模式两种显示界面 - **多源定位支持**:同时获取GPS卫星定位和网络定位信息 - **卫星状态监测**:实时显示可见卫星数量、信号强度及卫星种类(GPS、BDS、GLONASS、Galileo、QZSS等) - **实时数据更新**:100ms精度数据采集,实时显示数据新鲜度 - **屏幕常亮功能**:定位监测时自动保持屏幕常亮 - **权限智能管理**:自动检测和申请所需定位权限 - **数据可视化**:通过简洁直观的UI界面展示各项定位数据 - **前台服务运行**:后台持续采集定位数据,确保数据连续性 ## 技术架构 - **开发语言**:Kotlin - **UI框架**:Jetpack Compose - **最小SDK版本**:API 30 (Android 11) - **目标SDK版本**:API 35 (Android 15) - **核心功能**: - 多种定位数据融合 - 实时数据更新与显示 ## 应用界面 应用提供双模式界面设计,满足不同使用场景需求: ### 专业模式 - **网络定位结果**:显示经纬度、水平精度、数据新鲜度 - **卫星定位结果**:显示GPS卫星定位的经纬度、海拔、垂直精度、速度、方向等详细数据 - **卫星信息**:实时显示各卫星系统(GPS、BDS、GLONASS、Galileo、QZSS等)的可见卫星数和参与定位的卫星数 - **数据新鲜度**:显示数据获取时间戳,确保数据的实时性 ### 码表模式 - 提供仪表板式的简洁显示界面 - 重点突出关键定位数据 - 适合快速查看定位状态 ### 通用界面元素 - 权限管理提示:智能检测权限状态并提供申请入口 - 实时数据更新:100ms精度数据刷新 - 版权信息:显示开发者信息和项目地址 ## 权限说明 本应用需要以下权限以正常运行: ### 核心定位权限 - `ACCESS_FINE_LOCATION` - 获取精确GPS定位信息(必需) - `ACCESS_COARSE_LOCATION` - 获取网络定位信息(必需) - `ACCESS_BACKGROUND_LOCATION` - 后台定位权限(Android 10+,必需) ### 服务运行权限 - `FOREGROUND_SERVICE` - 运行前台服务(必需) - `FOREGROUND_SERVICE_LOCATION` - 定位前台服务类型(必需) - `WAKE_LOCK` - 屏幕常亮功能(必需) ### 网络相关权限 - `INTERNET` - 网络访问权限(必需) - `ACCESS_NETWORK_STATE` - 获取网络状态信息 - `ACCESS_WIFI_STATE` - 获取WiFi状态信息 - `CHANGE_WIFI_STATE` - 管理WiFi状态(网络定位辅助) ### 设备信息权限 - `READ_PHONE_STATE` - 读取设备状态信息(辅助定位) ### 权限申请流程 应用启动时会自动检测权限状态,按以下顺序申请: 1. 基础定位权限(前台定位) 2. 后台定位权限 3. 前台服务权限(自动授予) ### 硬件要求 - 支持GPS卫星定位的设备 - 支持网络定位的设备 - Android 11+ (API 30+) ## 安装与使用 1. 克隆或下载本项目源码 2. 使用Android Studio打开项目 3. 连接Android设备或启动模拟器 4. 编译并安装应用 5. 授予必要的定位权限 6. 启动应用即可查看实时定位信息