ios点击icon进入程序怎么获取推送消息
天蓬老师
天蓬老师 2017-04-17 15:01:58
[iOS讨论组]

如题:点击icon进入程序didFinishLaunchingWithOptions方法中launchOptions是nil的,无法得到消息。

但很多app都实现这种,不点通知进入,直接点app启动照样能得到推送信息的。

求大神指导~~

别的论坛里翻了个遍,发现有很多人都有这个疑问,但没人解决,希望在segmentfault知道的人不吝赐教~~

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
天蓬老师

如果不是点击通知栏进入APP,是拿不到推送消息的。原因是这样的,如果堆积了多条应用,回调将会变得复杂,而且没用。
正确的做法是,服务器要缓存好当前的未读消息,进入应用的时候去获取未读消息。
如果要识别通知栏点击,那获取未读消息之前可能还要进行进一步逻辑处理。

迷茫

推送消息出现情景和处理办法

1. 当程序处于关闭状态收到推送消息时,点击图标会调用- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions这个方法,那么消息给通过launchOptions这个参数获取到。

2. 当程序处于前台工作时,这时候若收到消息推送,会调用- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo这个方法

3. 当程序处于后台运行时,这时候若收到消息推送,如果点击消息或者点击消息图标时,也会调用- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary *)userInfo这个方法

不知道你是不是第一种情况,实际测试中是可以获取的

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号