点击通知调用的协议方法

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

注意:如果程序在前台运行,将无法看到任何通知(本地或者远程)

本地通知

在 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];

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 推送通知注意:这里说的推送通知跟NSNotification有所区别NSNotification是抽象的,不可见的...
    醉叶惜秋阅读 1,566评论 0 3
  • 非原创,收集,整理,觉得有用就罗列下为避免下次犯迷糊。 IOS 中的 AppDelegate.m/h 文件是很重要...
    西蜀阅读 541评论 0 0
  • 概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知...
    莫离_焱阅读 6,620评论 1 8
  • 今天好开心,达到第一个目标55kg,应该奖励自己一件漂亮的衣服。向54kg努力! 应该是在中学的时候就这个体重,后...
    早睡早起的习惯阅读 185评论 0 0
  • 我重新回到苏印的荒野书写群有一周了。这一周,我坚持了手写。我同时参加了两位好友的群,今天才发现,赞羽的是“全光谱”...
    黎思岐阅读 505评论 0 2