IOS 会增加推送通知徽章编号吗?
Will IOS increment a push notfication badge number?
我需要编写一个可以在图标上显示徽章编号的应用程序。
我能够收到推送通知,徽章号码也显示为 5。
但是,当应用程序尚未启动时收到第二个推送通知时,徽章仍然显示 5。
不应该是 10 吗?
iOS
不会对您发送到应用程序的徽章编号求和。它只显示从您的服务器发送的最新徽章编号。如果这是您要显示的徽章编号,您的服务器应该发送徽章编号为 10 的推送通知。
您需要从您的服务器发送更新的 badgeNumber。然后将显示更新的号码。 iOS 不求和,只显示数字。
您可以使用附加到推送通知的 aps
字典来控制徽章编号。
有一个 badge
键可用于设置正确的计数 - 但必须在服务器端计算推送通知的数量 - iOS 不会自动执行此操作。
Checkout the APS reference table 9-1 here
要重置徽章计数,您应该使用 UIApplication 方法。
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]
根据应用程序逻辑,您需要将其放置在不同位置,但最常见的用法是在应用程序激活时执行此操作。
- (void)applicationWillEnterForeground:(UIApplication *)application
{
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]
}
发送通知的服务器必须将数字设置为 10,而不是你。
有关详细信息,请参阅此处:https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/APNSOverview.html#//apple_ref/doc/uid/TP40008194-CH8-SW1
我需要编写一个可以在图标上显示徽章编号的应用程序。
我能够收到推送通知,徽章号码也显示为 5。
但是,当应用程序尚未启动时收到第二个推送通知时,徽章仍然显示 5。
不应该是 10 吗?
iOS
不会对您发送到应用程序的徽章编号求和。它只显示从您的服务器发送的最新徽章编号。如果这是您要显示的徽章编号,您的服务器应该发送徽章编号为 10 的推送通知。
您需要从您的服务器发送更新的 badgeNumber。然后将显示更新的号码。 iOS 不求和,只显示数字。
您可以使用附加到推送通知的 aps
字典来控制徽章编号。
有一个 badge
键可用于设置正确的计数 - 但必须在服务器端计算推送通知的数量 - iOS 不会自动执行此操作。
Checkout the APS reference table 9-1 here
要重置徽章计数,您应该使用 UIApplication 方法。
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]
根据应用程序逻辑,您需要将其放置在不同位置,但最常见的用法是在应用程序激活时执行此操作。
- (void)applicationWillEnterForeground:(UIApplication *)application
{
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]
}
发送通知的服务器必须将数字设置为 10,而不是你。 有关详细信息,请参阅此处:https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/APNSOverview.html#//apple_ref/doc/uid/TP40008194-CH8-SW1