ios - 从客户端增加角标(Badge)计数而不是从有效负载接收计数

标签 ios objective-c iphone swift push-notification

我正在处理接收通知并设置应用程序角标(Badge)的应用程序。
问题是当应用程序处于后台状态或终止时,角标(Badge)计数不会增加。
它保持不变。

当应用程序处于前台时,方法调用和角标(Badge)计数增加。
我已经从服务器端做了那件事,

但我想知道是否有任何方法当应用程序处于后台或因增加应用程序角标(Badge)编号而终止时执行?

我已经告诉过你我做了这件事

{
    "aps" : {
        "alert" : "You got your emails.",
        "badge" : 9
    }
}

从服务器端,但我想要的是:我不想从服务器有效负载接收角标(Badge)计数,但我想从我这边增加角标(Badge)计数。

< strong>我的逻辑是这样的,当我收到第一个通知时,我在 didReceiveNotification 中保存了 userdeafualts 中的计数,当我第二次通知时,我添加了 +1 计数,当应用程序处于前台时,我直接将 userdefaults 中的角标(Badge)计数更改为 0,但这种方法不能在后台工作或应用程序已终止

所以我想知道是否有任何方法在后台执行或应用程序已终止以便我可以增加角标(Badge)数量

如果有人知道,请帮我从我这边做。

最佳答案

使用 UIApplicationDelegateapplication(_:didReceiveRemoteNotification:fetchCompletionHandler:)。如果您启用了远程通知后台模式,系统会唤醒您的应用程序。有关详细信息,请查看此方法的文档

关于ios - 从客户端增加角标(Badge)计数而不是从有效负载接收计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39720213/

相关文章:

使用 WebGL 的 iOS PhoneGap 应用程序

ios - Swift - 如何让文本字段在测验中识别多个正确答案?

ios - NSTimer每秒更新标签,但覆盖以前的标签

iphone - 在 objective-c 中使用 c 库

iphone - 禁用滚动网页 View

iphone - 将 UITextField 与 UITextView 一起使用时,textFieldShouldReturn 方法出现问题

iOS 图表 ValueFormatter

ios - 在一个 ViewController 中显示两个图像,该 ViewController 使用 UIImagePickerController 从不同的按钮选取

iphone - 在iOS上的Temp目录中删除文件

ios - 做CABeginAnimation时如何正确设置模型