我正在创建一个VOIP应用。大部分逻辑都类似于VoIP应用程序的CallKit iOS Swift教程(超级简单)教程。https://websitebeaver.com/callkit-swift-tutorial-super-easy
我的问题是,在运行viewDidLoad()之后,CXCallController并不在应用程序的顶部,而是在“任务管理器”中它的旁边:
我所遵循的文档是这样写的:“如果您按下电话上的锁定按钮,您将看到拨出的呼叫正在尝试连接。”
在用户接受呼叫后,如何将CXCallController放在前面?
import UIKit
import CallKit
class ViewController: UIViewController, CXProviderDelegate {
override func viewDidLoad() {
let provider = CXProvider(configuration: CXProviderConfiguration(localizedName: "My App"))
provider.setDelegate(self, queue: nil)
let controller = CXCallController()
let transaction = CXTransaction(action: CXStartCallAction(call: UUID(), handle: CXHandle(type: .generic, value: "Pete Za")))
controller.request(transaction, completion: { error in })
}
func providerDidReset(_ provider: CXProvider) {
}
}
发布于 2019-01-28 09:48:43
对于已接受的呼叫,您不能将系统呼叫屏幕置于最前面。您必须自己提供UI。如果电话已锁定并且您收到VoIP呼叫,则会显示系统呼叫屏幕;或者,如果您有1个VoIP呼叫和1个常规呼叫并在这两个呼叫之间切换,则会显示系统呼叫屏幕。
https://stackoverflow.com/questions/54368597
复制