我正在尝试更改我正在开发的应用程序的徽章.关闭时,遗憾的是我只是在没有更改徽章的情况下通知了一条消息.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[application registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeBadge];
NSDictionary* userInfo = [launchOptions valueForKey:@"UIApplicationLaunchOptionsRemoteNotificationKey"];
NSDictionary *apsInfo = [userInfo objectForKey:@"aps"];
NSInteger badge = [[apsInfo objectForKey:@"badge"] integerValue];
if( [apsInfo objectForKey:@"alert"] != NULL)
{
application.applicationIconBadgeNumber = badge;
}
Run Code Online (Sandbox Code Playgroud)
但这并没有改变任何事情.我没有找到任何解决方案.在推送通知到达时调用了什么方法并且应用程序已关闭?我还补充说:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
#if !TARGET_IPHONE_SIMULATOR
NSLog(@"remote notification: %@",[userInfo description]);
NSDictionary *apsInfo = [userInfo objectForKey:@"aps"];
NSString *alert = [apsInfo objectForKey:@"alert"];
NSLog(@"Received Push Alert: %@", alert);
NSString *badge = [apsInfo objectForKey:@"badge"];
NSLog(@"Received Push Badge: %@", badge);
application.applicationIconBadgeNumber = [[apsInfo …Run Code Online (Sandbox Code Playgroud)