更新记录

1.0.0(2026-10-02) 下载此版本

首发

  • 新增:Android 前台服务保活(foregroundServiceType=location,Android 14+ 按类型启动)
  • 新增:悬浮球状态机(出车中 / 行程中 / 收车撤浮球)
  • 新增:原生 GPS 采样攒批直传后端(可配置采样间隔、批次大小、上报地址)
  • 新增:悬浮窗 / 后台定位 / 电池优化权限检测与一键跳转设置

平台兼容性

uni-app(4.0)

Vue2 Vue3 Vue3插件版本 Chrome Safari app-vue app-nvue Android Android插件版本 iOS 鸿蒙
- √ 1.0.0 - - - - 5.0 1.0.0 - -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - - -

安途行悬浮球与前台服务(antuxing-floatservice)

面向司机行程管理场景的 Android 原生 UTS 插件:

  • 前台服务保活:行程中常驻通知 + 前台服务(foregroundServiceType=location),锁屏/切后台/打电话时持续运行
  • 悬浮球状态机:出车中(常驻浮球)→ 行程中(浮球文案切换)→ 收车(撤浮球)
  • 原生 GPS 采样直传:原生层定位采样、攒批(batch)后直接 HTTP 上传后端,不依赖 JS 定时器
  • 权限引导:悬浮窗 / 后台定位 / 电池优化三项权限检测与一键跳转设置

仅支持 Android(App 端)。iOS 请另选方案。

快速开始

  1. 将 uni_modules/antuxing-floatservice 整个目录复制到项目 uni_modules/ 下(或从插件市场导入)。
  2. manifest.json → App 模块配置 → 勾选 Android 定位。
  3. 云端打包或自定义基座运行(UTS 插件标准基座不生效)。

API

方法 说明
startNativeTrack(options): boolean 启动前台服务 + 悬浮球 + GPS 采样。返回是否成功启动
updateNativeTrack(options): void 更新悬浮球文案/行程状态(出车中/行程中)
stopNativeTrack(): void 停止原生服务(先上传剩余采样点,再撤浮球、停前台服务)
checkNativePermissions(options): void 检测悬浮窗/后台定位/电池优化权限,回调结果
openNativeSetting(type): void 跳转对应系统设置页:overlay / background / battery

startNativeTrack options

字段 类型 必填 说明
text string 是 悬浮球文案(如"出车中")
tripId string 是 行程 ID(暂存行程时传入,空串表示未开始行程)
carNo string 是 车牌号,随采样点上报
intervalMs number 否 采样间隔(毫秒),默认 3000
batchSize number 否 攒批条数,达到后直传后端,默认 10
uploadUrl string 否 采样点上报地址,默认 http://101.200.151.228:3000/api/track/points

checkNativePermissions 回调

checkNativePermissions((res) => {
  // res: { overlay, background, battery, code }
  // 任一为 false 时前端引导用户去设置
})

使用示例(uni-app vue3)

import {
  startNativeTrack,
  updateNativeTrack,
  stopNativeTrack,
  checkNativePermissions,
  openNativeSetting
} from '@/uni_modules/antuxing-floatservice'

// 出车
startNativeTrack({ text: '出车中', tripId: '', carNo: '京A12345' })

// 暂存行程 → 行程中
updateNativeTrack({ text: '行程中', tripId: 'T20261002001', carNo: '京A12345' })

// 收车
stopNativeTrack()

// 权限引导
checkNativePermissions((r) => {
  if (!r.overlay) openNativeSetting('overlay')
  if (!r.background) openNativeSetting('background')
  if (!r.battery) openNativeSetting('battery')
})

权限声明(Android)

  • FOREGROUND_SERVICE / FOREGROUND_SERVICE_LOCATION:前台定位服务(Android 14+ 按类型启动)
  • ACCESS_FINE_LOCATION / ACCESS_COARSE_LOCATION:定位
  • ACCESS_BACKGROUND_LOCATION:后台定位(Android 10+)
  • SYSTEM_ALERT_WINDOW:悬浮窗
  • REQUEST_IGNORE_BATTERY_OPTIMIZATIONS:电池优化白名单引导
  • INTERNET:采样点上传统一由应用前端发起(插件内未内置网络权限时由 manifest 合并)

注意事项

  • 保活上限:本插件采用系统官方允许的「前台服务 + 定位」方案,不承诺所有机型 100% 不被杀。华为/小米/vivo/OPPO 等 ROM 需引导用户在系统设置开启「自启动 / 后台运行 / 省电白名单」。
  • 电池优化:Android 6+ Doze 模式会限制后台,建议引导用户「忽略电池优化」。
  • 采样间隔:线上建议 ≥1000ms,batchSize 按需调整以平衡耗电与实时性。
  • 通知常驻:前台服务通知不可滑动清除(保活需要)。

更新记录

见 changelog.md。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

Android:ACCESS_FINE_LOCATION(精准定位)、ACCESS_COARSE_LOCATION(粗略定位)、ACCESS_BACKGROUND_LOCATION(后台定位)、FOREGROUND_SERVICE(前台服务)、FOREGROUND_SERVICE_LOCATION(定位类型前台服务)、SYSTEM_ALERT_WINDOW(悬浮窗)、REQUEST_IGNORE_BATTERY_OPTIMIZATIONS(电池优化白名单引导)

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件采集设备位置信息(经纬度、精度、海拔、速度、方向、定位来源、时间戳),由原生层攒批直传开发者自建后端(http://101.200.151.228:3000/api/track/points),用于司机行程轨迹记录与回放。不依赖第三方SDK,不采集用户身份、设备标识等其他信息。

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

无

许可协议

MIT协议

暂无用户评论。