ios – 如何在使用Callkit接受呼叫后保留本机UI

ios – 如何在使用Callkit接受呼叫后保留本机UI,第1张

概述我正在使用Callkit和Linphone开发iOS voip应用程序.当我收到来电时,系统显示本机电话用户界面,用户接受或拒绝接听电话,当用户点按接听按钮时,呼叫开始但电话用户界面消失. 如何在用户接听电话后保留本机手机用户界面,例如whatsapp吗? 此外,如何在开始拨出电话时显示本机电话用户界面? 这是我的providerDelegate代码: func reportIncomingCal 我正在使用Callkit和linphone开发iOS voip应用程序.当我收到来电时,系统显示本机电话用户界面,用户接受或拒绝接听电话,当用户点按接听按钮时,呼叫开始但电话用户界面消失.

如何在用户接听电话后保留本机手机用户界面,例如whatsapp吗?

此外,如何在开始拨出电话时显示本机电话用户界面?

这是我的provIDerDelegate代码:

func reportIncomingCall(uuID: UUID,handle: String,hasVIDeo: Bool = false,completion: ((NSError?) -> VoID)? = nil) {    // Construct a CXCallUpdate describing the incoming call,including     the caller.    let update = CXCallUpdate()    update.remoteHandle = CXHandle(type: .generic,value: handle)    update.hasVIDeo = hasVIDeo    // Report the incoming call to the system    provIDer.reportNewIncomingCall(with: uuID,update: update) { error in        /*         Only add incoming call to the app's List of calls if the call was allowed (i.e. there was no error)         since calls may be "denIEd" for varIoUs legitimate reasons. See CXErrorCodeIncomingCallError.         */        if error == nil {            print("calling")        }    }}func provIDer(_ provIDer: CXProvIDer,perform action: CXStartCallAction) {    let update = CXCallUpdate()    update.remoteHandle = action.handle    provIDer.reportOutgoingCall(with: action.uuID,startedConnectingAt: Date())    NotificationCenter.default.post(name: NSNotification.name(rawValue: "callStart"),object: self,userInfo: ["uuID":action.uuID])    action.fulfill(withDateStarted: Date())}func provIDer(_ provIDer: CXProvIDer,perform action: CXAnswerCallAction) {    NotificationCenter.default.post(name: NSNotification.name(rawValue: "callStart"),userInfo: ["uuID":action.uuID])    // ACCEPT CALL ON SIP MANAGER    if let voiceCallManager = AppDelegate.voiceCallManager {        voiceCallManager.acceptCall()    }    action.fulfill(withDateConnected: Date())}
解决方法 接受来电后,您无法保留原生用户界面. Whatsapp使用自己的UI,类似于原生UI.

当您锁定iPhone并且接受来电时,它将不会向您显示APP UI.但是,如果iPhone解锁并且您接受来电,iPhone将打开您的应用,您必须显示您的手机用户界面.

对于拨打电话,您无法显示本机电话用户界面,如果您接到电话,则会显示.

因此,您需要一个用于拨出和已建立呼叫的自定义电话UI.

总结

以上是内存溢出为你收集整理的ios – 如何在使用Callkit接受呼叫后保留本机UI全部内容,希望文章能够帮你解决ios – 如何在使用Callkit接受呼叫后保留本机UI所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1101632.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存