iOS之点击通知栏的通知进入程序的触发事件
2019/7/9 22:59:54
本文主要是介绍iOS之点击通知栏的通知进入程序的触发事件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
点击通知栏的通知进入程序时,会触发App Delegate里的方法,分为以下两种情况:
1、程序未启动(即底部任务栏里没有进程)时:
此种情况下,点击通知栏的通知进入程序,会触发以下方法
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
对于launchOptions参数,需要经过以下处理:
NSDictionary* pushNotificationKey = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
其中的pushNotificationKey才是从服务端推送过来的数据,使用键值对方式就可以读取服务器传递过来的额外参数了。
应用还没有加载,这时如果点击通知的显示按钮,会调用didFinishLaunchingWithOptions,不会调用didReceiveRemoteNotification方法。如果点击通知的关闭按钮,再点击应用,只会调用didFinishLaunchingWithOptions方法。
2、程序已启动:
如果程序已经启动,并驻留在内存中,不管程序是在前台(Foreground)还是在后台(Background),如果点击通知栏的通知进入程序将触发以下方法:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
其中的userInfo参数,就已经是服务端推送过来的数据,也是采用键值对方式进行读取。
如果点击关闭再点击应用,则上面两个方法都不会被调用这时,只能在applicationWillEnterForeground或者applicationDidBecomeActive,根据发过来通知中的badge进行判断是否有通知,然后发请求获取数据
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持找一找教程网!
这篇关于iOS之点击通知栏的通知进入程序的触发事件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-29Axios库教程:初学者必备指南
- 2024-08-29Axios库资料:新手入门指南与基本使用教程
- 2024-03-14system bios shadowed
- 2024-03-14gabios
- 2024-02-07iOS应用提交上架的最新流程
- 2024-02-06打包 iOS 的 IPA 文件
- 2023-12-07uniapp打包iOS应用并通过审核:代码混淆的终极解决方案 ?
- 2023-11-25uniapp IOS从打包到上架流程(详细简单) 原创
- 2023-11-10【iOS开发】iOS App的加固保护原理:使用ipaguard混淆加固
- 2023-09-30最强大的iOS应用源码保护工具:Ipa Guard,保护你的商业机密代码