关于iOS推送中点击通知的几点(备忘)

来源:互联网 发布:nuts二战知乎 编辑:程序博客网 时间:2024/05/01 23:21

用户通过点击通知(包括本地和远程通知)打开应用时,在不同的情况下,会调用不同的方法.其实也是比较简单,在此记录一下,备忘

#### 注意:如果程序在前台运行,将无法看到任何通知(本地或者远程) 
#### 本地通知 
在 AppDelegate中 
A. 如果程序尚未退出 (在后台)则调用-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification

B. 如果程序已经退出,则是调用- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 其实所有程序刚打开,均会执行这个方法,对本地通知而言,特别之处是在参数 launchOptions中,UIApplicationLaunchOptionsLocalNotificationKey 是有值的. 用法[launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];

远程通知基本相似 
#### 远程通知 
在 AppDelegate中 
A. 如果程序尚未退出 (在后台)则调用-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo

B. 如果程序已经退出,则是调用- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 其实所有程序刚打开,均会执行这个方法,对本地通知而言,特别之处是在参数 launchOptions中,UIApplicationLaunchOptionsRemoteNotificationKey 是有值的. 用法[launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];



参考:http://blog.csdn.net/quentingui/article/details/44098325

0 0