是否可以根据推送通知内容打开iOS应用程序?我相信这是不可能的。还有其他方法吗?我相信我们可以使用iOS10中的小部件,对吧?请提出一些好的解决方案?
谢谢!
答案 0 :(得分:2)
只要您的有效负载有content-available:1
,您的应用就会在它到达后立即在后台状态中被呼叫,并会拨打application(_:didReceiveRemoteNotification:fetchCompletionHandler:)
。如果用户手动杀死应用程序,则不会调用它。 (这不会启动您的应用。它需要您的应用启动)
如果您的应用已被终止(由用户),但用户点击了通知,那么您的应用已启动来自didFinishLaunching ...委托方法。
答案 1 :(得分:1)
每当用户点击推送通知时,应用程序从未运行状态启动到AppDelegate中的运行状态 func application(应用程序:UIApplication,didFinishLaunchingWithOptions launchOptions:[NSObject:AnyObject]?) - >布尔{
}
in this function you can check application is launch from push or application icon
var notification: [AnyHashable: Any]? = (launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey] as? [AnyHashable: Any])
if notification != nil {
print("app received notification from remote\(notification)")
application(application, didReceiveRemoteNotification: notification)
}
else {
print("app did not receive notification")
}
答案 2 :(得分:0)
是的,我们无法在推送通知上打开ios应用程序,但我们可以通过推送通知唤醒应用程序。它叫做VOIP通知。您可以从以下链接https://github.com/hasyapanchasara/PushKit_SilentPushNotification
获取有关此内容的更多信息