Repository navigation
Releases: Xiyinnnnnn/Clean-QQmap
Release list
Clean-QQmap v4.6.0
更新内容
- 磁力计改为「仅定位初始北方」,不参与连续定位:启动时用磁力计采样若干帧(sin/cos 平均)
求出初始北方作为绝对参考,随后立即注销磁力计,连续运行阶段不再读取。根治磁场漂移,
同时补齐 v4.5.0 "无绝对磁北"的取舍。 - 真实方向以移动方向为基线:
MainActivity.resolveBearing优先级调整为
位移推算方向(COG,主) → 加速度基线+陀螺融合方向(次,仅静止/低速) → GPS 航向(兜底)。
即"人随意走动一段距离后,方向以此为准";陀螺仪仅在路口试探性旋转时辅助判断,
一旦积累出位移方向即被覆盖。 - 修正陀螺积分符号:航向角速度应为
-(ω·ĝ_up)(Android 加速度计静止时指向上)。
v4.5.0 漏了负号会导致旋转反向。
Clean-QQmap v4.5.0:箭头方向改「加速度基线+陀螺仪修正」,去磁力计
v4.5.0 — 箭头方向改「加速度基线 + 陀螺仪辅助修正」,彻底去掉磁力计
背景
上一版 v4.4.0 在静止时缺少绝对参考、方向也偏"跳",且历史上设备姿态方向在
地库/车内/金属环境下因磁力计受扰而"飘逸不准"。本版换用无磁力计的姿态融合方案。
本版改动
- 新增
core/AccelGyroHeading方向融合器:- 加速度计为基线:对加速度计低通得到重力向量,作为水平基准框架;
- 陀螺仪做修正:把角速度投影到地垂线提取航向角速度并积分,两次定位之间平滑补间;
- 完全不读取磁力计(
TYPE_MAGNETIC_FIELD),根除磁场干扰导致的漂移; - 绝对方向锚定:移动时由位移方向(course over ground)/GPS 航向把方位钉回真北;
静止且设备不旋转时冻结积分,抑制陀螺零偏漂移。
MainActivity.resolveBearing方向优先级:融合方向 → 位移方向(COG) → GPS 航向。- 传感器生命周期跟随 Activity(onResume 启动 / onPause 停止)。
取舍说明(重要)
去掉磁力计后不再有绝对磁北。静止且从未发生移动时无法确定绝对北,方向来自
"移动方向"的锚定——这是移除磁力计的固有代价。
校验
assembleRelease编译通过;DEX 内含AccelGyroHeading,无任何我们代码引入的磁力计符号
(getRotationMatrix仅来自厂商 tencent-map-nav-sdk 自身)。- 签名与历史版本同证书(SHA1
b6ddc697…),可平滑覆盖升级;versionCode 24 / versionName 4.5.0。
v4.4.0 朝向改用实际移动方向 + 导航路线朝前
v4.4.0 变更
1. 朝向改用「实际移动方向」(修复朝向乱飘)
主界面位置箭头不再依赖设备姿态传感器(旋转矢量 / 磁力计 + 陀螺仪),
改为由相邻定位点位移推算的行进方向(course over ground)。
- 手机放兜里 / 横握 / 车内 / 看地图转身,箭头都指向"实际在往哪走",不再乱飘;
- 磁干扰环境(地库、金属建筑、车内)下稳定,不受磁场影响;
- 新增
core/CourseTracker:锚点累积 + 精度自适应位移阈值 + 向量(sin/cos)指数平滑 + 静止保持方向; - 移除
core/OrientationSensor(不再需要任何方向传感器)。
静止时保持上一次移动方向(不强行回北);刚启动尚未积累位移时回退到定位航向。
2. 导航视角改回「路线朝前」
AppConst.NAVI_OVERHEAD_VIEW 默认由「俯视朝北」改为「2.5D 路线朝上」。
- 驾车 / 骑行 / 步行的地图朝向由导航引擎按路线方向驱动(不用手机朝向),不会随设备乱转;
- 注释说明同步更新。
版本
- versionCode 22 → 23,versionName 4.3.2 → 4.4.0
优化语音导航
v4.3.1 · 回退弱信号兜底(起步卡死)
v4.3.1 · 回退弱信号兜底
修复:v4.3.0 的 WeakSignalFeeder 导致导航卡在开始页。
该兜底在导航起步阶段反复喂 low_conf 绑路点,起步判定过不了、一直卡在开始页。本版移除三模式接入 + WeakSignalFeeder.java。
保留:v4.3.0 的 TtsSpeaker 纯 TTS 转发(砍自研去重)。
versionCode 20 → 21,versionName 4.3.0 → 4.3.1
v4.3.0 · 语音纯转发 + 弱信号兜底
v4.3.0 · 语音纯转发 + 弱信号兜底
修复:弱 GPS 场景导航卡住、语音反复重复。
语音播报改纯 TTS 转发
TtsSpeaker 砍掉自研三层去重(正在播丢弃 / 8s 文本指纹 / id 幂等),只做官方 onVoiceBroadcast 的转发(QUEUE_FLUSH)。
去重只能"少播"不能"多播":治不了弱 GPS 时官方反复下发同一句,反在路口连播时吞下一句(漏播)。
新增 WeakSignalFeeder 弱信号兜底(car/ride/walk 三模式共用)
记录 SDK 绑路位置,GPS 弱(>3s 无实测 fix)时喂绑路位置(provider=low_conf、status=3),防导航状态机"饿死"卡路口反复重播;实测 fix 恢复即切回。
版本
versionCode 19 → 20,versionName 4.2.0 → 4.3.0
v4.2.0 步行段导航入口
v4.2.0 — 换乘详情页「步行段导航」入口
在公交/地铁换乘方案的站点导航页中,为每一段步行(起点→首站、末站→终点)增加一键进入步行实时导航的入口。
新增
- 换乘详情页的步行段显示「N. 本段步行导航」按钮,点击直接进入步行实时导航(复用现有 WalkNaviActivity,不新增页面)
- 步行段起终点坐标取自官方返回的步行折线首/末点;乘车段坐标取自上/下车站
修复/加固
- 坐标有效性校验(纬度 3
54、经度 73136),避免缺坐标时导航到 0,0 - 折线解码改为不依赖地图 SDK 的纯数值实现
安装说明
- 版本
4.2.0 (19),minSdk 24 - 签名已为 release 签名,若已安装旧版(debug 签名)请先卸载再安装
下载
见下方 Assets 中的 app-release.apk。
v4.1.0
v4.1.0
新增
- 公交 / 地铁换乘查询(腾讯地图 WebService
direction/v1/transit)- 换乘方案列表:历时 / 距离 / 票价 / 线路摘要
- 站点导航详情:逐段展示步行指引、上车站与出入口、途经每一站、下车站、线路运营时段
- 说明:腾讯导航 SDK 只提供驾车 / 骑行 / 步行实时导航,公交场景官方能力为「换乘方案规划」,故本版公交以换乘方案 + 站点导航形式提供,纯文本排版、不依赖地图绘制
- 首页自定义起点:底部输入框可指定起点,留空回车 = 恢复「当前实时位置」;起点搜索结果向上展开,与顶部终点搜索框(向下展开)区分
变更
- 移除与「点搜索结果自动选导航方式」功能重复的底部按钮
- 版本 4.0.0 → 4.1.0(versionCode 18)
安装
- 单 ABI arm64-v8a,minSdk 24 / targetSdk 30
- 首次启动填入自己的腾讯位置服务 Key(不内置任何 Key)
校验
- SHA1:
b6ddc697f00bf6529d258b00af5e725c106b69cb(本 Release 签名)
v4.0.0
首个公开发布版本。
- 驾车 / 骑行 / 步行三模式实时导航
- 真实 GPS,无模拟导航、无广告
- 修复导航鉴权 Key 与跨模式切换问题
- 不含任何个人 Key 与签名
包名 com.xiyin.navi · arm64-v8a · minSdk 24 / targetSdk 30