当前位置: 首页 > 知识库问答 >
问题:

如何处理从parse收到的推送通知?|RSS

袁元明
2023-03-14

使用Parse,我的推送通知工作得很好。我的应用程序是一个RSS新闻源,有时我会发送推送通知,我的问题是,当用户收到推送通知时,我不知道如何处理它。我在plist文件中列出了我的所有RSS源,例如我的plist文件的外观:

rss_来源

↓ 
01
  ↓
  url http://www.newyorkNews.com/rss.xml
  title: new york News
↓
02
  ↓
  url http://www.harlemNews.com/rss.xml
  title: harlem news

我想做的是,检查标题是否等于推送通知的开头(因为我是发送推送的人,所以我会写下确切的标题),如果标题等于,那么它将转到某个索引。我在代码中设置的行。我在这里提供的东西有可能吗?如果有其他方法,我会很高兴听到解决方案,或者一些类似于我的情况的代码模式,这样我就能从中得到启发。

共有1个答案

东方俊明
2023-03-14

您所要做的就是为您的有效负载设置一个通用密钥,在您的情况下看起来像标题。因此,当您发送推送(作为data/payload/json)时,当用户收到推送时,您会交叉引用value eForKey:

和往常一样,我非常鼓励你自己尝试,因为这就是你学习的方式。我总是将Parse用户引导到他们的留档,因为他们有非常好的记录。如果这是一件事,记录几乎太多了。但是,如果你被困在这里,这是一个工作示例:

使用有效负载构建推送:

NSDictionary *data = @{
@"alert" : @"some generic message here",
@"badge" : @"Increment",
@"sounds" : @"default",
@"title" : @"NY Times" //this is whatever you want
};

//schedule the push with some options. This isn't a mandatory set up, just an example. You can do a lot with PFPushes

PFPush *push = [[PFPush alloc] init];
[push setChannels:@[ @"subscribed" ]];
[push setData:data];
[push sendPushInBackground];

现在您所要做的就是查看密钥标题的有效负载中的值是否符合您的需求:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  . . .
  // Extract the notification data from payload

 NSDictionary *notificationPayload = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey];

 NSString *newsType = [notificationPayload valueForKey:@"title"];

  // perform segue or tab bar selectedIndex or whatever you want after checking if user is launching from notification :

if (notificationPayload) {
    //check it title has your string 
    if ([newsType isEqualToString:@"NY Times"]) {
         //do whatever here 
    } else {

    }
 }
}

参考资料-请随意使用,他们为我们提供了最新的资源,做得很好

解析iOS推送:https://parse.com/docs/push_guide#top/iOS

解析SDKhttps://parse.com/docs/ios/api/

从解析控制台推送通知:

{
"aps" : {
    "alert" : "New NY Time Article",
    "badge" : 1,
    "sound" : "default",
    "title" : "NY Times"
        }
}

作为参考,这将让你开始:https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW15

 类似资料:
  • 问题内容: 我在应用程序中配置了Parse API,除推送通知外,其他所有功能均正常运行。我试图从网站发送它们,但它们未到达应用程序。我按照文档中的说明进行了所有操作,但是无法收到通知推送。 我能够收到一个,当我按它时,应用程序崩溃了。现在,我尝试更改某些内容,但即使反转,也无法再接收它们。我该如何解决我的问题? 编辑:由于某些用户可能感兴趣,所以这是我用于推送通知的部分代码: 主类(虽然不是Ma

  • iOS消息推送在工作灯,接收通知时,应用程序在后台作为徽章,但当我点击徽章也我得到有效载荷作为警报。我只需要徽章时,应用程序在后台运行。 实际上,我需要在应用程序位于前台时显示警报,如果应用程序位于后台,则显示徽章。在我的push received handler函数中,我正在检查这一点。但在ios中,只有当用户点击badge时,处理器函数get才会触发,而在Android中,当push收到时,处

  • 我正在尝试用远程通知处理所有可能的情况。当调用Foreground-DidReceiverEmoteNotification中的app时我就ok了。问题是当应用程序处于后台状态时,我收到推送通知。什么都不叫。如何让用户知道他有新的远程通知当应用程序回到前台?

  • 消息“成功订阅到广播频道。”在应用程序启动时打印。但是当我使用parse.com上的“发送推送通知”功能时,我的手机没有收到任何推送通知。 为什么不起作用?

  • 我没有收到Android推送通知。我能够 < li >注册设备 < li >接收设备标识符 < li >将通知消息推送到GCM 我成功进入通知发送事件,但我的设备上没有收到任何消息。成功的推送代码如下:

  • 我使用城市飞艇在iOS 10(Swift)应用程序中接收推送通知。我遇到以下问题,请您帮助解决。 应用程序运行时无法隐藏通知 为了隐藏通知,我尝试了以下任务... > 删除委托方法func userNotificationCenter的实现(center:UNUserNotificationCenter,willPresent通知:UNNotification,withCompletionHand