我已完成基本的推送通知设置,我在我的应用中收到了推送通知。使用解析作为后端。
现在我想在点按通知时从应用中打开特定项目。但不知道如何接近。
我正在通知有效负载中发送itemID。
在阅读了一些文档之后,我了解到我需要在以下两个委托方法中编写代码,主要是在应用程序处于活动状态且处于非活动状态时。
didFinishLaunchingWithOptions 当点击通知如果应用程序未处于活动状态(即未打开或在后台)时,我希望先同步完成,然后根据itemID将用户导航到itemsDetailViewController和鞋子项目。
didReceiveRemoteNotification 当应用程序打开时,我想根据推送通知中的itemID直接导航到项目。我能够在推送通知中看到我发送的自定义数据的键/值对。但不知道下一步该做什么。如何将此itemID传递给下一个控制器并打开项目。
任何帮助/建议表示赞赏。
答案 0 :(得分:2)
你走在正确的轨道上。函数didReceiveRemoteNotification:
是您应该处理通知的点。但是,您可以deep link
到达您希望的位置。
你可以做类似模态的事情。
let aViewController = YourViewController()
aViewController.itemID = itemID
UIApplication.sharedApplication().keyWindow.rootViewController.presentViewController(aViewController, animated: true, completion:nil)