是否可以从后台模式打开ViewController或杀死应用程序?

问题描述 投票:1回答:1

我正在尝试在收到推送通知时打开ViewController。我正在这样做[]

func pushRegistry(_ registry: PKPushRegistry, didReceiveIncomingPushWith payload: PKPushPayload, for type: PKPushType) {
 guard let aps = payload.dictionaryPayload[AnyHashable("aps")] as? NSDictionary else{
    return;
  }
 startCustomCallController(apnData: app)


}

fun startCustomCallController(apnData: NSDictionary){
 let storyBord = UIStoryboard(name: "PrivateUi", bundle: nil)
        guard let controller = storyBord.instantiateViewController(withIdentifier: "NewIncomingCallViewController") as? NewIncomingCallViewController else{
            print("Error instantiating view controller")
            return
        }
        controller.apnData = apnData
        guard let appdelegate = UIApplication.shared.delegate as? AppDelegate else {
                  print("appdelegate is missing")
                  return
        }
        UIView.transition(with: appdelegate.window!, duration: 0.5, options: .transitionCrossDissolve, animations: {
           appdelegate.window!.rootViewController = controller
        }, completion: nil)
}

在打开应用程序(在前景中时,它可以工作,但是在后台或被杀死时,它不能工作。这是不可能的还是我需要进行一些更改?

我正在尝试在收到推送通知时打开ViewController。我正在像这个func pushRegistry(_注册表:PKPushRegistry,didReceiveIncomingPushWith负载:PKPushPayload,用于类型:...

ios swift voip pushkit
1个回答
2
投票

我认为不可能从背景模型开始ViewController。如果要打开viewcontroller以进行与呼叫相关的任务击球员,请使用callkit

© www.soinside.com 2019 - 2024. All rights reserved.