不得不说哈基米还是太好用了一点

前排提示,本文有一半的内容为AI生成。
头图©Copyright:BiliBili@KoraCola"当你终于抬头的时候,宇宙正在慢慢转动"

昨天Gemini发布了3.1版本,玩上头之后决定趁着新年假期实现一下预谋已久的小功能。
当你使用微信系统电话的时候,如果你的手机平常开了免打扰,那么错过通话不是什么很令人意外的事情。苹果开发团队就做的不错,因为他们接入了系统callkit,可以以通话的形式提示用户接听电话。不过这个项目也是半残废的,因为apple watch显然并不能像真正的来电一样支持微信来电。这类鸡肋的功能也让我在用了一段时间苹果系生态之后返回了安卓。

可能是苹果人不太喜欢用微信吧,这也能让人理解。与此相对的是鸿蒙人鸿蒙系统也有较完善开发的微信callkit接入——但是如果为了能接微信语音就买华为实在太蠢了,微信、华为简直是我最讨厌的科技公司的代表,倘若不算字节的话。总之,安卓人也应该有安卓人的来电接听方案。

Wechat2Telecom

所以,我几乎是完全以gemini生成代码,手动在手机上调试,以kotlin勉强能看懂一加一等于二的实际水平写了这个模块。

它是干什么的?

简单来说,它是一个“来电投射器”。它通过安卓原生的 NotificationListenerService 盯住微信的一举一动,一旦发现有倒霉蛋给你打微信电话,它就立刻通过 TelecomManager 在系统底层伪造一个“标准电信来电”。

这样做最大的好处是:你的手机、智能手表、甚至是连接了 Windows 的“手机连接”都会同步弹出全屏的来电界面。 你不再需要盯着那个经常被系统后台杀掉、或者在免打扰模式下悄无声息的微信小横幅,而是像接到真正的 10086 电话一样,全设备共鸣,震动到你怀疑人生。

关于接听逻辑

目前我选择了一个比较稳妥的方案:只管报,不管接。 虽然 Gemini 教了我不少“暴力”接听的方法,但在实测中发现,我还是很难实现按钮的功能对应。与其强行劫持逻辑导致崩溃,不如先实现完美的“多端响铃同步”,接听的事情,还是留给手机划那一下吧。

搞快点?

项目已经打包发布在 GitHub 仓库了。如果你也受够了在 Windows 上工作时错过微信电话,或者受够了智能手表只震一下就停的尴尬,可以去试试这个 Release 版本。

https://github.com/SherlockChiang/wechat2telecom

使用说明

由于安卓系统(尤其是 MIUI/HyperOS/OriginOS)对后台行为限制极严,请务必手动完成以下设置,否则服务可能无法正常工作:

通知监听权限:安装后首次启动,请按提示开启“通知监听服务”。

默认通话账户:进入 系统设置 -> 应用管理 -> 默认应用 -> 电话(或在拨号盘设置中),将 WeChat Bridge 设为可选的通话账户。

后台弹出界面:在“应用详情 -> 权限管理”中,将 后台弹出界面 设为“始终允许”。

省电策略:在“应用详情 -> 电池管理”中,设置为 “无限制” 或“不优化电池使用”。

最后修改:2026 年 02 月 21 日
请我喝杯可乐?