Gadgetbridge最新版本的导航列表里,藏着一个挺讽刺的细节:Google自家的Google Maps想把导航指令发到你手腕上的手表,靠的不是接口,是“读通知”——软件在后台解析Google Maps弹出的文字提示,再翻译成手表能懂的指令。真正用官方API直连的,反而是两款开源地图App:CoMaps和OsmAnd。
CoMaps刚刚宣布,从Gadgetbridge v0.93.0起(该版本已于8月13日发布),用户可以把CoMaps设为导航数据源,PineTime等支持的智能手表能直接收到转弯提示;同时CoMaps也接进了健康数据面板应用OpenVitals,把骑行、徒步的路线叠加进运动记录里。单看每一项都不大,拼在一起,指向的是CoMaps一个更大的野心:从一款地图App,变成安卓开源生态里的导航基础设施。
权限怎么给,数据怎么走
两处集成的入口都很具体:Gadgetbridge在“设置-外部集成-导航”里打开开关,会对所有已连接的支持设备生效;OpenVitals在“设置-活动-CoMaps导航指引”里打开,能在运动记录界面叠加CoMaps设定的路线。
关键在权限模型:CoMaps不会默认把数据丢给别的App,每个接入方都要拿到用户手动授予的专用权限。CoMaps还在Codeberg上公开了Content Provider文档,任何开源开发者理论上都能拿这套接口做自己的仪表盘或小组件。这是一种“默认隐私、按需开放”的设计思路——但文档目前没说清权限能不能随时撤销、是App级还是可以细到数据类型,这一层留白值得后续观察。
“支持的智能手表”没那么广泛
CoMaps官方公告里对设备只写了一句“supported smartwatch”,容易让人以为兼容面很宽。实际情况分成三档,落差不小。
真正“开箱即用”的,主要是PineTime/InfiniTime和Bangle.js这类小众开源硬件;Fossil Hybrid HR用户得先装一个非官方App才能用上;华为设备只写了“部分型号”,具体哪些型号、以后会不会扩大,Gadgetbridge官方文档也没说清楚。这跟“supported smartwatch”给人的印象,是有落差的。
Google Maps为什么反而要“猜通知”
- 风险.Google Maps没有开放导航指令的直接接口,Gadgetbridge只能靠解析它弹出的通知文字来拼凑导航信息,这种方式天然更脆弱,一旦Google改了通知格式就可能失效。
这个反差是原文没提但很值得说的一层:不是Gadgetbridge故意冷落Google,而是Google Maps根本没开放导航指令的官方接口给第三方,Gadgetbridge只能靠“猜”。CoMaps和OsmAnd反而因为开源、协议公开,能被别人用最干净的方式接进去。君子和而不同,说的就是这种状态——各自是独立App,接口标准了,照样能拼成一套顺滑的系统。巨头的护城河,反而成了自己在别人地盘上的短板。
这步棋值不值
CoMaps这次动作的意义,不在用户规模——PineTime、Bangle.js加起来的体量,跟Google Maps没法比。它的价值在于把自己变成一个可以被复用的“接口”,让Gadgetbridge、OpenVitals这些独立团队不用各自造轮子,就能拿到导航能力。
- 结论.开源生态过去最大的短板是各自为战、数据孤岛,CoMaps这次用标准化的Content Provider权限,把“导航”从App功能升级成了公共接口,这比多加一个功能更有长期价值。
代价也很实在:标准化需要时间打磨,权限粒度、撤销机制这些细节现在还不透明;设备支持不均衡,短期内也不会突然变得“广泛兼容”。这不是一次大爆发,更像开源阵营在补一块长期被忽视的底层拼图——它值不值,得看接下来有多少App愿意接进来,愿意接进来的App,能不能真的把体验做到能替代Google那一整套。
