IOS5:图标Badging在非运行状态

时间:2011-11-10 14:00:49

标签: iphone ipad ios5 push-notification badge

我搜索了很多解决方案,以便在应用程序未运行时处理图标标记。

我写了一个接收推送通知的应用,但是在运行状态下,我可以更新application:didReceiveRemoteNotification:功能中的徽章,我仍然无法弄清楚如何在应用程序未运行时更新图标徽章

我的应用程序的通知菜单下的“徽章应用程序图标”开关打开但接收远程通知时图标徽章未更新。

代码在设备上运行,不涉及模拟器。

我的通知包含徽章

$body['aps'] = array(
'alert' => $message,
'sound' => 'default',
'badge' => '1' // Wrong, see edit...
);

我正在使用一个简单的PHP脚本来生成它。

我错过了什么吗?

修改

我发现我将徽章属性作为字符串而不是数字发送。

php中的正确代码是:

$body['aps'] = array(
'alert' => $message,
'sound' => 'default',
'badge' => 1 // Right
);

使用数字徽章值,图标徽章已正确更新。

1 个答案:

答案 0 :(得分:5)

当系统收到推送通知时,它会检查通知是否包含徽章编号。如果是这样,它会将您的应用徽章设置为该数字。

您是否在推送通知中设置了徽章编号?