私のアプリケーションでは、リモート通知に登録しました。ユーザーがコンテンツを公開すると、すべてのユーザーが通知を受け取ります。到着した通知の数を数え、アイコンバッジの数を更新しようとしています。
たとえば、ユーザーが3つの通知を受け取った場合、バッジ番号は3になる必要があり、ユーザーがアプリを開くと、バッジ番号は0に戻ります。しかし、バッジを設定する方法がわかりません。私はこれを試しました:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
application.applicationIconBadgeNumber = 2;
// Handle Socialize notification at foreground
[self handleNotification:userInfo];
}
これに伴う問題は、通知を受け取ったときではなく、通知を受け取ったときに実際にアプリを開いたとき(フォアグラウンドに持ってきたとき)にバッジが2に設定されることです。どうすればこれを解決できますか?助けてくれてありがとう。
編集:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
[UIApplication sharedApplication].applicationIconBadgeNumber = [[[userInfo objectForKey:@"aps"] objectForKey: @"1"] intValue];
// Handle Socialize notification at foreground
[self handleNotification:userInfo];
}