2017-07-24 65 views
2

我有一個與callkit集成的應用程序,在呼叫被拒絕或通話失敗後,本機callkit ui彈出並顯示回撥按鈕,但按下時,performStartCallAction回叫將永遠不會觸發。似乎有人發佈了相同的問題,但似乎還沒有解決方案。Callkit回撥按鈕不起作用

回答

2

您誤會了performStartCallAction:。該方法可以調用的唯一方法是如果您的應用創建了CXStartCallAction對象,然後在CXCallController上調用requestTransaction:來請求使用此操作的事務。只有您的應用可以通過明確請求發起啓動呼叫;你的應用程序之外沒有任何東西可以做到

當用戶嘗試通過應用程序從應用程序外部「撥打電話」時,例如通過在電話應用程序中按下過去的呼叫,或按通話聯繫人應用程序中的聯繫人,音頻呼叫中的「視頻」按鈕,或(我假設)正在執行「回撥」,您的應用程序收到通知的方式是在您的應用代理的-application:continueUserActivity:restorationHandler:方法中發送INStartAudioCallIntentINStartVideoCallIntent。你的應用程序如何處理這個完全取決於你;它無能爲力,它可以發起一個新的CallKit調用(對同一個或不同的聯繫人),或者它可以在你的應用程序界面中做其他事情;任何你想要的。