2015-10-15 39 views
0

我已經將我的iOS應用程序的蘋果推送通知時。我的問題是,當我重新安裝應用程序時,即使在登錄應用程序之前,也會顯示先前的通知徽章數。我怎麼解決這個問題?請幫幫我。如何清除通知徽章計數重新安裝應用

+0

刪除應用程序,並設置徽章零的appdelegate didFinishLaunching方法 – baydi

+0

我想清楚之前,用戶打開應用程序徽章計數。一旦安裝完成,它會顯示以前的徽章號碼。如果用戶沒有打開應用程序,那麼之前的徽章數量將保持不變,直到他打開應用程序 – user1960169

+0

看看這是隻發生,因爲你以前並沒有清除批處理。當你這樣做不會再次發生上述步驟只或您的device.When應用程序將被安裝爲一個新的它不會顯示徽章的圖標。 – baydi

回答

1

你試過從多任務菜單查殺應用程序,並啓動它再次打電話?這裏

- (void)applicationDidBecomeActive:(UIApplication *)application 
{ 
application.applicationIconBadgeNumber = 0; 
} 

其他

它只會得到清除上啓動應用程序。

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

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; 

return YES; 
} 

選擇-2

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    if (launchOptions != nil) 
    { 
     NSDictionary* dict = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; 
     if (dict != nil) 
     { 
      NSLog(@"Launched with APNS: %@", dictionary); 

      [self clearAPNSNotifications]; 
     } 
    } 

    return YES; 
} 

- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo 
{  
    NSLog(@"Received APNS : %@", userInfo); 
    [self clearAPNSNotifications]; 
} 

- (void) clearAPNSNotifications { 
[[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0]; 
[[UIApplication sharedApplication] cancelAllLocalNotifications]; 
} 
+0

中序到會發生這樣我的應用程序應該通過點擊不是它打開?但我的問題是,當我剛剛重新安裝它,只要我之前也打開它顯示了以前的徽章計數 – user1960169

+0

@ user1960169的應用程序 - 檢查更新答案 –

+0

WY我應該清除didReceiveRemoteNotification徽章? – user1960169

2

更新爲iOS 7和iOS 8和iOS 9,從蘋果的文檔:

在iOS 7及更高版本,第一次對於 推送通知啓用推送應用註冊,iOS的詢問用戶是否希望接收 通知該應用程序。一旦用戶迴應此警報 除非該設備恢復或應用程序已 被卸載了至少一天,它不會被再次提出。

如果你想模擬首次您的應用程序的運行,你可以離開 卸載了一天的應用程序。您可以實現後者沒有 實際上按照下列步驟等待一天:

,從設備刪除您的應用程序。完全關閉設備,然後 重新打開。轉到設置>常規>日期&時間並將日期設置爲 一天或更長時間。再次將設備完全關閉,然後 重新打開。

對於iOS 5和iOS6的:

重置推送通知權限通過從備份(R 11450187)恢復設備 警報。下面是步驟有效地做到這一點 :

使用Xcode的組織者在設備上安裝您的應用。關鍵是 第一次安裝應用程序而不運行它。使用iTunes 備份設備。運行應用程序。將顯示推送通知權限 警報。當您想要重置推送通知 權限警報時,請從您在 中創建的備份中恢復設備的第一步。

更多詳細信息,請參考此鏈接http://developer.apple.com/library/ios/#technotes/tn2265/_index.html

+0

你的答案是有價值 –

相關問題