int
또는 NSInteger
으로 값을 식별 할 수 없어 배지 개수가 업데이트되지 않습니다.
일부 사람이 정수가 아닌 값을 전달하려고하면 배지가 업데이트되지 않습니다. 어떤 경우에도 경고 나 충돌이 표시되지 않지만 배지 가치에 필요한 유형을 식별 할 수 없으면 사라집니다.
푸시 알림을보고 유료로드가 필요한 유형의 관점에서 볼 수없는 값일 수 있습니다. 즉, string
또는 boolean
일 수 있으며 배지 필수 유형과 호환되지 않습니다.
배지 개수를 업데이트하기 전에 수행 할 수있는 작업은 int
입니다.
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
// Assuming payload data is parse and result in a dictionary like below:
NSDictionary *payloadData = @{ @"alert": @"Test", @"badge": @1, @"sound":@"default" };
NSString *badgeString = [payloadData objectForKey:@"badge"];
NSInteger badgeValue = [badgeString integerValue];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:badgeValue];
}
(1) 또는 @ "증가"를 @로 1을 변경해보십시오 :
당신이 사전에 구문 분석 페이로드 데이터를 가지고 코드를 아래와 같이 결과 사전이 될 것이라고 가정 –