【问题标题】:iOS CallKit. Jump directly to applicationiOS 呼叫套件。直接跳转到应用
【发布时间】:2022-07-13 18:34:56
【问题描述】:

我目前正在开发具有 VoIP 功能的 iOS 应用程序。我使用 CallKit 接听电话。当设备被锁定并且用户接听电话时,系统 UI 出现并且用户可以点击我的应用程序图标以进一步移动到我的应用程序。这是预期的行为,并且工作正常。

但是,我注意到当您使用 Viber 进行视频通话时,行为略有不同。当您接听电话时,系统 UI 会出现片刻,然后 Viber 应用程序会自动出现。 Telegram 的情况并非如此,您仍然需要点击 Telegram 图标才能进一步移动。因此,预计不会出现 Viber 行为。看起来来自 Viber 的人以某种方式绕过系统 UI 并直接跳转到他们的应用程序。

有人知道他们是怎么做到的吗?

【问题讨论】:

    标签: ios callkit


    【解决方案1】:

    显然,如果您在上报呼叫时将CXCallUpdatehasVideo 属性设置为true,则系统将在接受呼叫时自动打开您的应用程序。无论如何,文档中的任何地方都没有提到此功能。或者,至少,我找不到任何关于它的信息。

    这是我现在报告新调用的代码部分:

    let update = CXCallUpdate()
    update.remoteHandle = CXHandle(type: .generic, value: handle)
    update.hasVideo = true // <- was false earlier, setting to true did the trick
    update.supportsDTMF = false
    update.supportsHolding = true
    update.supportsGrouping = false
    update.supportsUngrouping = false
    
    callProvider.reportNewIncomingCall(with: uuid, update: update, completion { error in 
       /*...*/
    }
    

    【讨论】:

      【解决方案2】:

      我也有类似的问题,但是我的问题是在iOS16beta下,当hasVideo=YES的时候点击回答按钮,悬浮条不会改变或者进入app,只有视频。只有当hasVideo=NO时才会进入应用。

      【讨论】:

        猜你喜欢
        • 2011-08-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多