2017-07-24 67 views
2

我有一个与callkit集成的应用程序,在呼叫被拒绝或通话失败后,本机callkit ui弹出并显示回拨按钮,但按下时,performStartCallAction回叫将永远不会触发。似乎有人发布了相同的问题,但似乎还没有解决方案。Callkit回拨按钮不起作用

回答

2

您误会了performStartCallAction:。该方法可以调用的唯一方法是如果您的应用创建了CXStartCallAction对象,然后在CXCallController上调用requestTransaction:来请求使用此操作的事务。只有您的应用可以通过明确请求发起启动呼叫;你的应用程序之外没有任何东西可以做到

当用户尝试通过应用程序从应用程序外部“拨打电话”时,例如通过在电话应用程序中按下过去的呼叫,或按通话联系人应用程序中的联系人,音频呼叫中的“视频”按钮,或(我假设)正在执行“回拨”,您的应用程序收到通知的方式是在您的应用代理的-application:continueUserActivity:restorationHandler:方法中发送INStartAudioCallIntentINStartVideoCallIntent。你的应用程序如何处理这个完全取决于你;它无能为力,它可以发起一个新的CallKit调用(对同一个或不同的联系人),或者它可以在你的应用程序界面中做其他事情;任何你想要的。