在CallKit中调用reportOutgoingCall时,不要打开应用程序?

时间:2018-03-26 10:31:37

标签: ios swift callkit

我有一个简单的代码

  let uuid = UUID()

  let provider = CXProvider(configuration: CXProviderConfiguration(localizedName: "My App"))
  provider.setDelegate(self, queue: nil)
  provider.reportOutgoingCall(with: uuid, startedConnectingAt: nil)

  let controller = CXCallController()
  let transaction = CXTransaction(action: CXStartCallAction(call: uuid, handle: CXHandle(type: .phoneNumber, value: "Pete Za")))
  controller.request(transaction, completion: { error in
    if error == nil {
      print("CXStartCallAction")
    } else {
      print(error?.localizedDescription ?? "??")
    }
  })

  DispatchQueue.main.asyncAfter(wallDeadline: DispatchWallTime.now() + 5) {
    print("reportOutgoingCall  -- connectedAt")
    provider.reportOutgoingCall(with: uuid, connectedAt: nil)
  }

就是这样。

但是,当我最小化应用并调用func provider.reportOutgoingCall(with: uuid, connectedAt: nil)我的应用程序打开时。

如何在最小化应用并打电话provider.reportOutgoingCall(with: uuid, connectedAt: nil)

后打开我的应用

enter image description here

1 个答案:

答案 0 :(得分:0)

检查您的应用是否在后台运行。如果不是,那么尝试在“视图确实消失”中终止应用程序。