作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个 VOIP 应用程序。大多数逻辑类似于 VoIP 应用程序的 CallKit iOS Swift 教程( super 简单)教程。 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) {
}
}
最佳答案
您不能将系统调用屏幕置于已接受调用的前面。您必须自己提供 UI。如果电话被锁定并且您收到一个 VoIP 电话,或者如果您有 1 个 VoIP 和 1 个普通电话并且您在两者之间切换,则会显示系统调用屏幕。
关于ios - 如何将 CXCallController 置于最前面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54368597/
我是一名优秀的程序员,十分优秀!