Iphone 在应用程序处于前台和后台时遵从推送通知处理程序

Iphone 在应用程序处于前台和后台时遵从推送通知处理程序,iphone,iphone-sdk-3.0,ios4,push-notification,apple-push-notifications,Iphone,Iphone Sdk 3.0,Ios4,Push Notification,Apple Push Notifications,据说(如果我错了,请纠正我)如果应用程序在前台,我们必须在“DidReceiveMemotentification”中处理推送通知,如果应用程序在后台,当用户点击应用程序的“view”按钮时,使用“didFinishLaunchingWithOptions”。由于我没有手机测试,我想知道我是否处理得当 1) 当我点击推送通知中的“查看”按钮时,将调用什么 2) 假设我在前台运行应用程序,同时接收推送通知。我会收到推送通知警报吗?如果是这样的话,如果用户点击查看按钮会发生什么 3) 在这条线索中,

据说(如果我错了,请纠正我)如果应用程序在前台,我们必须在“DidReceiveMemotentification”中处理推送通知,如果应用程序在后台,当用户点击应用程序的“view”按钮时,使用“didFinishLaunchingWithOptions”。由于我没有手机测试,我想知道我是否处理得当

1) 当我点击推送通知中的“查看”按钮时,将调用什么

2) 假设我在前台运行应用程序,同时接收推送通知。我会收到推送通知警报吗?如果是这样的话,如果用户点击查看按钮会发生什么

3) 在这条线索中,它说:

“alert”键不会直接位于userInfo字典下,您需要获取另一个名为“aps”的字典,然后从“aps”字典中获取“alert”或“body”

这是真的吗

4) 当用户单击view按钮时,我需要按下某个视图。因此,我需要在这两种方法中处理该代码吗


谢谢

这段苹果视频中有一个推送通知调用的方法的详细介绍:-请确保访问并在iTunes中下载完整版本

这种直接联系可能会起作用:

  • 不管怎样,一般的想法是,如果你的应用程序不在前台,点击查看按钮将触发didFinishLaunchingWithOptions,如果是前台应用程序,你将获得DidReceiveMemoteNotification

  • 我认为您不会收到警报。将调用didReceiveEmoteNotification方法,如果需要,将由您显示UIAlert

  • 是的,没错

  • 是的,但我认为您可以通过创建第三个专门设计用于处理视图的方法来简化此过程。您可以从didFinishLaunching调用此方法(仅当它通过通知启动时),和DidReceiveMemoteNotification。这样,如果您的应用程序需要启动,您可以有时间进行任何其他设置,以使应用程序在启动后立即工作(加载保存的数据、初始化tabbar控制器或其他类似的设置)

  • 祝你好运