我的应用只会调用提醒,但徽章会显示并且无法清除。这是代码.... :
- (void)registerForAPNService
{
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert)];
}
ApplicationIconBadgeNumber设置为17,如下所示。
(void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken
{
//[SettingsManager shared].apnToken = [[[NSString alloc] initWithData:devToken encoding:NSSymbolStringEncoding] autorelease];
NSString *apnToken = [devToken description];
apnToken = [apnToken stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"< >"]];
apnToken = [apnToken stringByReplacingOccurrencesOfString:@" " withString:@""];
_dataManager.apnToken = apnToken;
NSLog(@"Device token is %@", devToken);
NSLog(@"Device token is %@", apnToken);
[self sendAPNToken];
//app.applicationIconBadgeNumber = 17;
这是徽章的原因吗?我的开发人员说“在APNS注册期间徽章被关闭,这是一个iOS错误。”那似乎是这种情况吗?
答案 0 :(得分:1)
徽章不能真正“关闭”。我不知道你的开发人员的意思,但我非常怀疑这是一个iOS错误。您可以将徽章数量设置为0,如下所示:
app.applicationIconBadgeNumber = 0;
也许他们将applicationIconBadgeNumber
设置为17,然后将该行注释掉,但从未将其设置为0。