gpt4 book ai didi

ios - 如何拦截从 CallKit 来电屏幕发送的 "Messages"?

转载 作者:可可西里 更新时间:2023-11-01 03:55:40 24 4
gpt4 key购买 nike

我正在使用 iOS 10 的 CallKit 接听来电。我的应用程序中的调用不是来自“电话号码”或“电子邮件地址”,而是来 self 协议(protocol)中的内部标识符。因此,我使用自定义字符串报告带有 CXHandleTypeGenericCXHandleType 的来电(而不是 CXHandleTypePhoneNumberCXHandleTypeEmailAddress)作为句柄的“值”。

当我报告来电时,手机未锁定,用户看到一个来电屏幕,带有“提醒我”、“消息”、“拒绝”和“接受”按钮。如果用户按下“消息”按钮,并在以下菜单中选择消息字符串之一,它会尝试通过消息应用程序将该字符串作为文本消息发送,目的地是我用作“值”的自定义字符串"的调用句柄,就好像它是电话号码或电子邮件地址一样,即使它不是。这通常会导致消息由于目的地无效而无法发送,但是,根据字符串,它实际上可能会发送到用户不想发送到的有效目的地;两种结果都很糟糕。

我想看看是否有办法让消息不通过“消息”应用发送(在我的情况下总是不正确),而是传递到我的应用中,以便我可以将消息发送给调用者正确地通过我的内部协议(protocol)。


更新:“提醒我”和“消息”按钮不再出现在 iOS 10.1 上

最佳答案

如果在 iOS 12 中支持 SiriKit,则出现“消息”按钮。(将 INSendMessageIntent 添加到 intent 的 info.plist 中)

如何拦截:

  1. 运行 Intent 扩展
  2. 处理handler(for intent:)

关于ios - 如何拦截从 CallKit 来电屏幕发送的 "Messages"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39669421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com