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

时间:2018-03-22 01:12:53

标签: ios swift apple-push-notifications

语言:Swift 3

我正在使用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有点麻烦。

1 个答案:

答案 0 :(得分:1)

在iOS中,如果没有用户的明确交互,就无法启动应用并显示其窗口。

如果您的应用程序在后台,或者在收到来自APNS的推送通知时终止,则如果在推送通知有效负载中定义了推送通知,iOS将向用户显示警报。除非用户点击它,否则有效负载不会传递给已终止或暂停的应用,表明他们希望参与警报。

VOIP,Apple Watch Complications或FileProvider应用程序例外。这些应用可以使用PushKit framework与APNS进行交互。如果应用程序终止,此框架将启动应用程序,并将通知有效负载传递给应用程序,即使它位于后台。但是,这不会显示应用程序的窗口,只会提供有效负载以进行处理。用户需要点击主屏幕上的应用程序图标,或者使用提供的通知提醒来使您的应用程序可见。