본문 바로가기

Programming/iOS

푸시 알리 지우기

반응형

푸시를 받아서 알림센터에 생긴 알림은 터치하여 앱이 실행되면 제거해야 합니다.

알아서 지워지는지 알았는데... 안 지워주네요;


구글 검색을 통해 여러가지 방법을 알아냈지만 성공한 방법은 아래와 같습니다.


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    (생략)

    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
    [[UIApplication sharedApplication] cancelAllLocalNotifications];
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
    [[UIApplication sharedApplication] cancelAllLocalNotifications];
}


badgeNumber 를 1->0 으로 설정하는 이유는 정확히 모르겠지만 저렇게 하지 않으면 지워지지 않습니다.


반응형