ios – 在Swift更新徽章柜台

前端之家收集整理的这篇文章主要介绍了ios – 在Swift更新徽章柜台前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用以下代码,我可以在应用编译后立即在徽章图标中找到(2):
func application(application: UIApplication,didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {
    let installation = PFInstallation.currentInstallation()
    installation.setDeviceTokenFromData(deviceToken)
    installation.badge = 2
    installation.saveInBackground()
}

我尝试了下一个变体:初始化一个新的var badgeCount = 0及更高版本:

func application(application: UIApplication,didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {
    badgeCount++
    let installation = PFInstallation.currentInstallation()
    installation.setDeviceTokenFromData(deviceToken)
    installation.badge = badgeCount
    installation.saveInBackground()
}

但是当我收到新的通知,它不会更新到1.有谁知道如何解决它?

解决方法

它不会使用此方法更新徽章编号,除非应用程序实际打开.如果要在收到通知后更新徽章编号,则需要将json push通知的徽章属性设置为所需的号码.

如果您发送正常消息(不使用儿子),则会有一个切换来增加徽章编号,只需勾选该标记.如果你使用Json然后使用这个:

{
    "aps": {
        "alert": "Test Push Notification","sound": "yourSound.aiff","Badge": "desiredNumber"
    }
}

请注意,如果您不希望从服务器发送,您也可以使用Parse的客户端推送将其从一个设备发送到另一个设备,进入Parse.com中的应用程序中的设置并启用“客户端推送”,您可以然后将上述Json发送到另一个用户的设备.

猜你在找的iOS相关文章