• 点击推送,跳转到查看推送消息的页面


    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
    <br>
    <br>   if(launchOptions)
    <br>
    <br>    {
    <br>
    <br>        [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
    <br>
    <br>        NSDictionary *userInfo = [launchOptions objectForKey: UIApplicationLaunchOptionsRemoteNotificationKey];
    <br>
    <br>        [self presentViewControllerWithUserInfo:userInfo];
    <br>
    <br>    }
    <br>
    <br>}
    <br>
    <br>
    <br>
    <br>//App状态为正在前台或者后台运行,那么此函数将被调用
    <br>
    <br>- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
    <br>
    <br>{
    <br>
    <br>   
    <br>
    <br>   if(application.applicationState != UIApplicationStateActive)
    <br>
    <br>    {
    <br>
    <br>
    <br>
    <br>        [self presentViewControllerWithUserInfo:userInfo];
    <br>
    <br>       
    <br>
    <br>    }
    <br>
    <br>}
    <br>
    <br>
    <br>
    <br>#pragma mark - 消息跳转页面
    <br>
    <br>- (void)presentViewControllerWithUserInfo:(NSDictionary *)userInfo
    <br>
    <br>{
    <br>
    <br>      //拿出你的消息内容,跳转即可~~
    <br>
    <br>[self.window.rootViewController presentViewController:fyfNavCtrl animated:YES completion:^{
    <br>
    <br>                   //
    <br>
    <br>                }];
    <br>
    <br>}

    第一种,如果程序是打开的,但是在后台,这个时候收到推送信息,可以进入指定页面- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 方法可以做到

    程序完全没有启动的时候,是不会调用第一种那个方法的

    第二种- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  这个函数在你正常启动下 launchOptions 是空,如果你是从点击推送通知过来的,那么 laungchOptions里面会包含你的推送的内容。在这里就可以进行相应的处理

    推送消息可以带自定义字段,

    如message:”/product/detail”

    程序在收到推送消息时,读取消息该字段,就可以直接跳转了!

  • 相关阅读:
    将包含<pre>标签的json转换成js
    JS 获取系统时间
    JS 对url进行编码
    DevExpress.XtraCharts.ChartControl 实例
    VB 窗体继承
    datagrid 属性
    SQLite操作总结
    Struts2 简介及学习方法介绍
    struts2 中使用DMI(动态调用方法)方式配置action
    JSP 里 的 basePath
  • 原文地址:https://www.cnblogs.com/liaolijun/p/6690088.html
Copyright © 2020-2023  润新知