微信有一个针对 iOS 系统的适配功能,一直是不少用户心中的遗憾——CallKit。
CallKit 是苹果提供给第三方 App 的通话接口,接入后可以让微信语音、视频来电像系统电话一样全屏弹出,还能写入电话 App 的通话记录。体验上和打电话几乎没有区别。
CallKit框架使用系统电话接听语音
但自从 2018 年以来,国内微信用户就无法使用 CallKit 了。具体原因微信从未公开说明过,但普遍认为与合规要求有关。
微信目前的替代方案目前 iOS 微信已经接入了苹果的 LiveCommunicationKit 框架,也就是 CallKit 之外的另一套通话方案。
大家可以在微信 → 设置 → 通知里面,开启「语音和视频通话用弹窗快捷接听」。开启后,收到微信语音或视频来电时,灵动岛会弹出提醒,不用打开微信 App 就能直接接听。
不过这套方案和 CallKit 比,体验差距还是明显的:没有全屏来电界面,也不会把通话记录写入系统电话 App。对很多用户来说,灵动岛上那个小弹窗,怎么都不如一个全屏来电画面来得直观。
所以直到今天,还是有不少人怀念当年 CallKit 的体验。
iOS 27:LiveCommunicationKit 迎来大升级坏消息是,微信大概率不会在国内重新适配 CallKit。但好消息是,iOS 27 将对 LiveCommunicationKit 进行一大升级,升级后的能力比传统 CallKit 更适合现代 iOS 交互。
苹果在 WWDC26 上发布了一期技术分享,主题为「Create live communication experiences」,专门面向开发者介绍全新的 LiveCommunicationKit 框架。
这次升级的核心变化包括:
全屏锁屏来电界面:采用新框架后,App 内的实时通话可以像系统电话一样,在锁屏界面展示全屏通话 UI,包含联系人姓名、头像和标准控制按钮灵动岛深度整合:通话状态可以接入灵动岛,用户在灵动岛中进行挂断等操作时,系统会把对应操作回传给 App 处理
Siri 和 Spotlight 入口:开发者可以通过 App Intents,让用户从 Siri、Spotlight 或最近通话中重新发起会话
最近通话列表:开发者可以选择是否让通话出现在电话 App 的「最近通话」列表中,方便用户回拨
以前 CallKit 能做到的事,新版 LiveCommunicationKit 基本都能做到,而且在灵动岛和 Siri 这些新特性的配合上做得更好。
苹果工程师在视频中也直接喊话开发者:
如果你的应用目前正在使用传统方法(比如 CXProvider API,也就是 CallKit 的核心组件),现在是迁移到 LiveCommunicationKit 的绝佳时机。
关键问题:微信会跟进吗?框架是苹果提供的,但第三方 App 是否适配、适配到什么程度,则取决于开发者适配以及地区规则。所以微信最终何时跟进新版 LiveCommunicationKit,目前还说不好。
新版 LiveCommunicationKit 的一个重要变化,是它提供了更灵活的配置项。它并不是把第三方通话交给系统电话 App 来接听,而是由 App 通过 ConversationManager 向系统上报会话状态,系统再在锁屏、灵动岛等位置展示统一的通话界面。真正的接听、挂断、音视频连接和服务器通信,仍然由 App 自己处理。至于是否出现在电话 App 的「最近通话」列表中,则是开发者可以配置的能力。
当年国内微信 CallKit 被下线,具体原因没有确切说法,但相比 Callkit,新版 LiveCommunicationKit 的确给开发者留出了更多空间。
写在最后CallKit 未必会回来,但微信语音和视频通话,确实有机会通过新版 LiveCommunicationKit 获得接近系统电话的体验。
当然,iOS 27 提供了能力和接口,最终能做到哪一步,还要看微信等 App 的适配进度,以及国内是否开放这些能力。
但至少从苹果这次 WWDC26 的方向来看,第三方通讯 App 终于有了一套比过去更灵活的系统级通话方案。对等了很多年微信全屏来电的小伙伴来说,这次确实值得期待一下。