【问题标题】:How to set badge icon when push notification is received收到推送通知时如何设置徽章图标
【发布时间】:2015-06-14 10:17:06
【问题描述】:

我正在开发一个位于UIWebView 中的iOS 聊天应用程序。我也实现了推送通知。但我想知道如何检测设备上是否已收到聊天消息(推送通知)并能够相应地设置徽章图标。

【问题讨论】:

  • 我可以用一个简单的逻辑来帮助你......当你在聊天中收到消息时......要求一个推送通知指示消息已传递,当你点击消息并打开该屏幕时,调用另一个推送通知指示消息已被阅读..
  • 您的主要问题是如何在收到推送通知时设置徽章图标。这也是我更新标题的原因。祝你有美好的一天!

标签: ios push-notification icons chat badge


【解决方案1】:

使用 parse.com(默认为推送通知),您可以通过将“徽章”键设置为您想要的任何数字来“发送徽章”。然后接收端的操作系统将为您设置徽章编号。见下文:

    PFPush *push = [[PFPush alloc] init];
    NSString *userChannel = [NSString stringWithFormat:@"USER-%@", userId];
    [push setChannel:userChannel];
    NSDictionary *data = @{@"alert":@"You have a new review!",@"badge":@1, @"sound":@"default"};
    [push setData:data];
    [push sendPushInBackground];

从 iOS 8 开始,请注意,如果您希望接收器在收到推送通知时听到提示音,还必须包含“声音”键。

在接收端,您可能希望在用户打开应用后清除徽章图标。你可以这样做:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
    [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
    [PFPush handlePush:userInfo];
}

【讨论】:

  • 我们如何在不使用 Parse 的情况下实现这一目标..有什么办法吗?我已经在我的应用程序中实现了推送通知,但还没有做徽章图标。我需要检测何时在我的设备(聊天应用程序)上收到消息,如果应用程序未打开,我想显示徽章图标..有什么想法吗?
  • 你用什么推送通知?你是如何实现的?
  • 我正在使用带有后端支持的默认苹果推送通知
猜你喜欢
  • 1970-01-01
  • 2018-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-18
  • 2013-08-07
相关资源
最近更新 更多