Warm tip: This article is reproduced from serverfault.com, please click

iphone-如何在iOS应用中检索和处理远程推送通知内容

(iphone - how to retrieve and handle remote push notification content in iOS app)

发布于 2013-07-01 03:30:03

我想在应用程序未运行时获取远程通知信息,所以我被告知可以从:

UILocalNotification *localNotification  = [launchOptions 
                   objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey] 

在方法中:

- (BOOL)application:(UIApplication *)application 
               didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

,但仍然无法获取信息。

然后我使用alertView在iPhone上显示信息(在没有Xcode的情况下启动),仍然无法获取信息。

还有其他问题吗?如果你有任何想法,请告诉我。

Questioner
piaChai
Viewed
0
33.6k 2013-07-01 17:27:02

如何检索和处理远程通知:

应用程序正在运行

userInfo下面方法中已经包括推送通知

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
}

应用未运行

launchOptions 中 key 的值包括推送通知,在两种情况下:

1.屏幕被锁定,当收到远程推送通知时,屏幕亮起,用户解锁屏幕,然后直接启动应用程序。

2.用户点击下拉菜单上的通知以启动应用程序。如果用户直接点击应用程序,则通知将消失并错过。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
   [launchOptions valueForKey:UIApplicationLaunchOptionsRemoteNotificationKey] description];
}