我正在使用Urban Airship向我的应用发送推送通知
例如:
{"aps": {"badge": 2, "alert": "Part 2 of the August Issue is ready to download!", "sound": "default"}, "device_tokens": ["X"]}
警报将完美显示,但无论我设置“徽章”,应用图标都不会被标记:#to ...
我的有效负载是否不正确或是否有额外的代码我应该添加到我的应用程序来处理徽章和警报?谢谢!
编辑: 我正在注册这样的推送通知:
// Register for notifications
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeNewsstandContentAvailability | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert)];
答案 0 :(得分:6)
我遇到了类似的问题。几分钟后检查一下。我注意到我的服务器端代码存在问题。我发现必须将徽章值隐式设置为整数才能获得所需的结果。希望能帮助任何人阅读本文。
答案 1 :(得分:2)
在iOS 5中有一个设置 - >通知。仔细检查Badge App Icon是否已打开。
我认为在您测试时应用程序不在前台?如果它在前台,那么你必须手动处理徽章。
答案 2 :(得分:2)
在appdelegate .m文件中设置以下代码..
-(void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo
{
NSLog(@"Received notification: %@", userInfo);
//[self addMessageFromRemoteNotification:userInfo];
NSString* alertValue = [[userInfo valueForKey:@"aps"] valueForKey:@"badge"];
NSLog(@"my message-- %@",alertValue);
int badgeValue= [alertValue intValue];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:badgeValue];
}