gpt4 book ai didi

ios - 我们可以发送/显示静默 iOS 通知的角标(Badge)计数吗?

转载 作者:行者123 更新时间:2023-11-29 12:18:15 24 4
gpt4 key购买 nike

我想在 iOS 应用程序中处理角标(Badge)计数增量。根据我到目前为止所做的研究,我了解到应用程序可以在前台时以编程方式读取/更新角标(Badge)。此外,仅当应用程序处于前台状态时才会调用“application:didReceiveRemoteNotification”。

但是,即使我的应用程序处于后台状态,我也希望能够增加角标(Badge)。我遇到了下面的通知回调方法,即使在后台状态下也会被调用 -应用程序:didReceiveRemoteNotification:fetchCompletionHandler

它是在 iOS 7 中引入的。但是我注意到即使是这个新引入的回调也不会在后台状态下调用。然后在做了更多的研究之后,我意识到这个方法只在 Silent iOS 通知的情况下调用。所以现在我的问题是,是否可以显示静默通知的角标(Badge)计数,我可以在有效负载中接收角标(Badge)计数吗?我只是想通过利用可用于静默通知的后台支持来实现角标(Badge)计数计算。

此时此刻,任何建议/指导/帮助对我们来说都是非常宝贵的。

谢谢。

最佳答案

您可以将角标(Badge)计数放入有效负载中。在这种情况下,服务器端应该处理角标(Badge)计数。例如:

{
“应用程序”:{
“角标(Badge)”:5,
},
}

如果您的应用在前台运行并增加/减少服务器发送的角标(Badge)计数,以下示例会有所帮助。

    - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo  {
NSLog(@"remote notification: %@",[userInfo description]);

if (userInfo) {
NSLog(@"%@",userInfo);

if ([userInfo objectForKey:@"aps"]) {
if([[userInfo objectForKey:@"aps"] objectForKey:@"badgecount"]) {
[UIApplication sharedApplication].applicationIconBadgeNumber = [[[userInfo objectForKey:@"aps"] objectForKey: @"badgecount"] intValue];
}
}
}
}

关于ios - 我们可以发送/显示静默 iOS 通知的角标(Badge)计数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31446194/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com