iOS(Swift) 当我收到推送通知时如何调用我的应用程序?

iOS(Swift) How can I call my application when I get push notice?

语言:Swift3

我使用 APNS 是为了 运行 MFMessageComposeViewController。 当我收到推送通知时,我不知道如何 运行 我的应用程序。 最重要的原因是显示短信视图。

func application(_ application: UIApplication, didReceiveRemoteNotification data: [AnyHashable : Any]) {
        // Print notification payload data
        print("My Push: \(data)");
// Run my application with MFMessageComposeViewController.

}

我的应用程序有一个 MFMessageComposeViewController,所以我想调用 ViewController.swift 一些方法。

我该如何实施?

[编辑] 我的意思是我想 运行 我的应用程序自动打开和关闭屏幕。 我通常在 android 完成这项工作没有问题,但是 iOS 有点麻烦。

在 iOS 中,没有用户的明确交互,无法启动您的应用并显示其 window。

如果您的应用程序在后台运行,或者在收到来自 APNS 的推送通知时终止,iOS 将向用户显示一个警报(如果在推送通知负载中定义了警报)。负载不会传送到终止或暂停的应用程序,除非用户点击它,表明他们想要参与警报。

VOIP、Apple Watch Complications 或 FileProvider 应用程序除外。这些应用程序可以使用 PushKit framework 与 APNS 交互。如果应用程序终止,此框架将启动应用程序,并向应用程序发送通知负载,即使它在后台也是如此。但是,这不会显示您的应用程序的 window,只会传送有效负载以供处理。用户要么需要点击主屏幕上的应用程序图标,要么参与显示的通知提醒以使您的应用程序可见。