从推送中重置应用程序图标上的徽章
Posted
技术标签:
【中文标题】从推送中重置应用程序图标上的徽章【英文标题】:Reset badge on app icon from push 【发布时间】:2015-12-11 12:05:51 【问题描述】:我使用 parse 向 ios 和 android 用户发送推送。由于某种原因,解析界面更新默认设置“增加应用程序徽章?”后已启用,所有 iOS 用户现在都会看到带有“1”的红色徽章。
在我当前的应用版本中。我的应用程序中没有任何删除徽章的代码。 如何为我的用户重置此徽章?也许我可以发送一些推送来将它的数字设置为等于 0?
【问题讨论】:
是的,使用0
推送会有所帮助。
怎么做?例如来自 parse.com 界面?
【参考方案1】:
您应该点击JSON
,而不是选择text
类似的东西:
对于每个通知,组成一个 JSON 字典对象(定义为 RFC 4627)。此词典必须包含另一个已识别的词典 通过关键的aps。 aps 字典可以包含一个或多个属性 指定以下用户通知类型:
向用户显示的警报消息 用于标记应用程序图标的数字 播放声音
从这里:https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html
你也可以使用"content-available" : 1
创建一个静默推送通知,用户会收到推送但不会通知,所以你可以发送这个推送来清除徽章
【讨论】:
这是一个很好的解决方案!谢谢!我发现对于静默推送,有必要在没有“警报”的情况下发送 JSON【参考方案2】:func applicationDidBecomeActive(application: UIApplication)
let inst = PFInstallation.currentInstallation()
if inst.badge != 0
inst.badge = 0
inst.saveEventually()
如果您想在不更新应用的情况下执行此操作,您可以通过 Parse 网站发送 Push 并设置 badge : 0
。
【讨论】:
我只能将它添加到新版本的应用程序 - 但它将在大约一周内可用 - 我想现在重置它) 发送然后推送badge : 0
以上是关于从推送中重置应用程序图标上的徽章的主要内容,如果未能解决你的问题,请参考以下文章