美文网首页
实现iOS收到推送消息后跳到指定的页面

实现iOS收到推送消息后跳到指定的页面

作者: 悲伤C小调 | 来源:发表于2017-07-06 13:49 被阅读369次

########这里离线推送用的极光推送,集成推送这里就不做说明了,根据极光官方文档集成基本没有什么问题。

#######极光推送收到消息的代理方法:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{ NSLog(@"尼玛的推送消息呢===%@",userInfo); // 取得 APNs 标准信息内容,如果没需要可以不取 NSDictionary *aps = [userInfo valueForKey:@"aps"]; NSString *content = [aps valueForKey:@"alert"]; //推送显示的内容 NSInteger badge = [[aps valueForKey:@"badge"] integerValue]; NSString *sound = [aps valueForKey:@"sound"]; //播放的声音 // 取得自定义字段内容,userInfo就是后台返回的JSON数据,是一个字典 [APService handleRemoteNotification:userInfo]; application.applicationIconBadgeNumber = 0; [self goToViewControllerWith:userInfo]; }

#######在这里方法里面做跳转
- (void)goToViewControllerWith:(NSDictionary*)msgDic{ //将字段存入本地,因为要在你要跳转的页面用它来判断,这里我只介绍跳转一个页面, NSUserDefaults*pushJudge = [NSUserDefaults standardUserDefaults]; [pushJudge setObject:@"push"forKey:@"push"]; [pushJudge synchronize]; NSString * targetStr = [msgDic objectForKey:@"target"]; if ([targetStr isEqualToString:@"notice"]) { MessageVC * VC = [[MessageVC alloc]init]; UINavigationController * Nav = [[UINavigationController alloc]initWithRootViewController:VC];//这里加导航栏是因为我跳转的页面带导航栏,如果跳转的页面不带导航,那这句话请省去。 [self.window.rootViewController presentViewController:Nav animated:YES completion:nil]; } }

提示:跳转到指定页面后(因为有正常操作进入到这个页面,也有点推送消息直接跳转到这个页面),这个动作需要作区分,这里用NSUserDefaults保存了一个push;来区分,pop或者dismiss页面也需要根据这个key来进行操作

实现:

-(void)viewWillAppear:(BOOL)animated{ [self.navigationController setNavigationBarHidden:NO animated:YES]; [super viewWillAppear:YES]; NSUserDefaults*pushJudge = [NSUserDefaults standardUserDefaults]; if([[pushJudge objectForKey:@"push"]isEqualToString:@"push"]) { //如果是点推送消息进来的做什么操作 //这里需要清空NSUserDefaults NSUserDefaults * pushJudge = [NSUserDefaults standardUserDefaults]; [pushJudge setObject:@""forKey:@"push"]; }else{ //如果是正常操作点进来的做什么操作 } }

相关文章

  • 实现iOS收到推送消息后跳到指定的页面

    ########这里离线推送用的极光推送,集成推送这里就不做说明了,根据极光官方文档集成基本没有什么问题。 ###...

  • iOS点击推送消息跳到应用指定页面

      现在的推送用的越来越频繁,几乎每个应用都开始用到了。推送是苹果为我们提供的一种联系用户的方式,可以有效增加用户...

  • JPush推送之当进程被终止的处理

    当系统通知栏接收到JPush远程推送消息,并实现点击消息跳转指定页面,处理推送消息的回调函数如下: 一、我们需要分...

  • iOS推送踩坑

    需求 app收到推送,点击推送消息进入指定页面,常用做法是在didReceiveRemoteNotificatio...

  • 消息推送收集的

    1. 可以用的Demo 无法收到点击消息 iOS - 收到远程推送后的页面跳转 http://blog.csdn....

  • 不启动应用,url scheme以及推送跳转指定页面

    通常情况 1、推送 推送过来的消息,点击后都是要跳到指定的页面的,比如我是一款社交软件,我获得了一个新粉丝,应用在...

  • 友盟推送

    iOS收到推送后,跳转到某一页面 最近刚好有个项目,向指定用户推送订购信息、物品状态等等。 给大家讲一点常识,友盟...

  • 收到推送push指定页面

    ZCYTabBarController * tabBarController = (ZCYTabBarContro...

  • iOS 远程推送通知

    iOS 远程推送通知 分分钟搞定IOS远程消息推送 iOS推送通知的实现步骤 推送通知iOS客户端编写实现及推送服...

  • iOS 推送通知-跳转到详情页

    ios推送分为两种,一种是本地推送,一种是远程推送。项目需要实现的就是通过远程推送来进入到指定的页面,要做远程推送...

网友评论

      本文标题: 实现iOS收到推送消息后跳到指定的页面

      本文链接:https://www.haomeiwen.com/subject/doehhxtx.html