微信团队现正逐步放开Callkit用户使用资格。
CallKit 跟资格分配有关。我们从微信团队的开发者中了解到,2018 年,本功能就已在 6.6 版本中引入本微信(国内版本)和 WeChat(国际版本)。并在 iOS 13.4 微信更新深色模式后短暂开通过灰度测试资格,但后续又经过内部考量关闭。
推出以来,Callkit 代码一直存在于微信中。即使你使用国行 iPhone(序列号结尾为CH/A)/ 手机号为国内手机号(+86 开头)/ 国内 App Store 下载的微信,无论 iOS 版本多少、Apple ID 地区是否为中国大陆等,只要你有资格,都可以使用到 Callkit 功能。换言之,就是微信 app 老早就内置 Callkit 的代码了,不是等不等更新的问题,有资格的也不会突然没有,没资格的话只能看资格分配。
微信团队在 iOS 微信 8.0.55 版本中,一律将老用户原有的 Callkit 功能调换为了 LiveCommunicationKit 接口,它是一种苹果公司在 iOS 17.4 中引入的新框架。与 CallKit 截然不同的是,LiveCommunicationKit 在锁屏状态下不会全屏弹出,也不会在 iOS 通讯录中留下通话记录。满血 Callkit 为图 5 所示,不同的还有:通话待接的灵动岛类似系统通话,而非微信 Logo。通话进行时,灵动岛显示为音波,和系统通话一致,点击灵动到区域可进入类系统通话界面,而非微信。且当通话结束后,用户可以看到系统最近通话的记录,点击即可跳转呼出微信电话。这将原有拥有原生 Callkit 一律改为非满血的一刀切行为,非常令人迷惑。
CallKit 是苹果公司在 iOS 10 中推出的一项开发框架,旨在让第三方 app 的 VoIP 通话功能更好地集成到 iOS 系统中。通过此功能,用户可以在锁屏界面直接看到来电显示,并进行接听或挂断操作,体验与普通电话接听一致。
简言之,原来用户收到他人的微信通话,只能通过 iOS 手机通知推送的形式,点击后热启动微信 app 跳转以后才能选择接听或者挂断,Callkit 可以省略跳转步骤,用户不解锁即可接听或挂断应用内通话,即使微信 app 不在后台运行(被用户杀除后台)。