2017-05-16 49 views
0

我正在使用CallKit。 我已經下載了SpeakerBox示例,並且我有自己的示例,它使用來自SpeakerBox的自定義SIP和WebRTC和CallKit代碼。CallKit:調用UI控件

我注意到,在SpeakerBox應用程序中,如果您啓動本地虛擬呼叫,然後有另一個來電(沒有區別,如果它是模擬SpeakerBox傳入一個或真實的移動電話),您將永遠(確定,在99.9%例)在系統提供的用戶界面調用屏幕上獲得「保留&接受」和「結束&接受」按鈕。

但我的應用程序的東西如下:

  • 我開始我的VoIP應用(設備A)和調用一些手機號碼(設備B)
  • 我在Device B
  • 我打電話接受電話從另一個手機號碼(設備C)到設備A
  • 我正在獲取系統調用UI,但只能使用「接受」和「拒絕」按鈕。所以我不能把當前的電話舉行。

這是可以在應用程序內或應用程序本身的CallKit中配置的東西嗎?

回答

1

當您不向系統(設備A)報告呼叫被設備B接受時發生。然後,如果您接受來自設備C的新來話呼叫,則將結束與設備B的當前呼叫。

  • 提供商T:

    爲了解決這個問題,當裝置A被通知有關呼叫被B接受,你必須使用此:其中

    [provider reportOutgoingCallWithUUID:callUUID connectedAtDate:[NSDate date]];

    他CXProvider收到上-(void) provider:(CXProvider *)provider performStartCallAction:(CXStartCallAction *)action

  • callUUID是設備A.

呼叫的UUID我希望它可以幫助你。

+0

非常感謝!從SpeakerBox演示中不太明顯,現在我已經掌握了它。 –