IOS Gmail 等应用如何在没有推送通知的情况下更新(减少)徽章计数器
How IOS apps like Gmail update(decrement) badge counter without push notificatons
IOS 中的应用通常会显示徽章计数器,告知该应用有多少未读通知待处理。我的理解是,要更新徽章计数器、递增或递减,我们需要发送包含当前计数器值的推送通知。
我正在测试 Gmail 应用程序的行为,即使我在笔记本电脑的浏览器上将邮件标记为已读,IOS 上应用程序上的计数器也会减少以表示正确的值,但不会收到任何推送通知。在测试它之前,我在 IOS 上杀死了该应用程序。
我想知道 Gmail 是如何做到这一点的。可以静默推送通知,让我们在不显示通知提醒的情况下更新应用徽章计数器吗?当应用程序处于终止状态时,静默推送通知是否有效?
在 iOS 上,应用程序是否被终止或未收到推送通知并不重要(顺便说一句,这就是它们是推送通知的原因)。为了更新徽章编号,您可以发送后台通知(静默通知),它会唤醒您的应用程序,以便您的应用程序可以更新、获取新内容。
您可以通过从服务器发送新计数来更新应用的徽章计数。例如发送:
{
“aps” : {
“badge” : 9
}
}
作为负载,您可以将徽章设置为 9。
有关 APNS 负载的更多信息,您可以check the docs
IOS 中的应用通常会显示徽章计数器,告知该应用有多少未读通知待处理。我的理解是,要更新徽章计数器、递增或递减,我们需要发送包含当前计数器值的推送通知。
我正在测试 Gmail 应用程序的行为,即使我在笔记本电脑的浏览器上将邮件标记为已读,IOS 上应用程序上的计数器也会减少以表示正确的值,但不会收到任何推送通知。在测试它之前,我在 IOS 上杀死了该应用程序。
我想知道 Gmail 是如何做到这一点的。可以静默推送通知,让我们在不显示通知提醒的情况下更新应用徽章计数器吗?当应用程序处于终止状态时,静默推送通知是否有效?
在 iOS 上,应用程序是否被终止或未收到推送通知并不重要(顺便说一句,这就是它们是推送通知的原因)。为了更新徽章编号,您可以发送后台通知(静默通知),它会唤醒您的应用程序,以便您的应用程序可以更新、获取新内容。
您可以通过从服务器发送新计数来更新应用的徽章计数。例如发送:
{
“aps” : {
“badge” : 9
}
}
作为负载,您可以将徽章设置为 9。
有关 APNS 负载的更多信息,您可以check the docs