美文网首页
一行代码解决APP在前台激活状态下推送任然会响应的问题

一行代码解决APP在前台激活状态下推送任然会响应的问题

作者: 大眠兽 | 来源:发表于2016-06-13 09:54 被阅读0次

    一行代码解决APP在前台激活状态下推送任然会响应的问题

       最近集成极光推送,然后成功以后发现一个问题:当APP在前台激活状态下,按着极光的官方demo和文档来配置,依然会接收到数据并进行处理。而这种情况,我们往往是不想APP去响应的。
      这时候,就需要判断,我们的APP是否处于前台激活状态,如果处在前台激活状态,我们就让他不去响应这个推送,不发送Notification告知我们需要处理。
    

    -(void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo fetchCompletionHandler: (void (^)(UIBackgroundFetchResult))completionHandler { [JPUSHService handleRemoteNotification:userInfo]; if([UIApplication sharedApplication].applicationState == UIApplicationStateActive) { //程序处于激活状态,不允许推送 NSLog(@"程序处于激活状态,不允许推送"); return; }else{ NSLog(@"fetchCompletionHandler fetchCompletionHandler收到通知:%@", [self logDic:userInfo]); //处理推送 [[NSNotificationCenter defaultCenter] postNotificationName:@"GetJpushModel" object:userInfo]; completionHandler(UIBackgroundFetchResultNewData); } }

    不会写成漂亮的那种,如果有人看到请见谅。谢谢。

    相关文章

      网友评论

          本文标题:一行代码解决APP在前台激活状态下推送任然会响应的问题

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