2014-04-09 57 views
0

由於某種原因,我的應用程序有7的圖標徽章,但我沒有編碼這部分的代碼,似乎無法擺脫這個數字。我該如何擺脫它,或者我可以在哪裏操作這個對象?不能擺脫應用程序圖標徽章號

+0

沒有實施徽章,這是不可能的!檢查它是否真的是徽章或只是一個應用程序的圖像? –

+0

這絕對不是應用程序圖像。我仍然不知道7是從哪裏來的。我用ZS的答案擺脫了它,但是我認爲這將始終將徽章圖標設置爲0. – user3513175

+0

您可以在'UIApplication'上用'-enabledRemoteNotificationTypes'禁用徽章更新類型。 – Aaron

回答

1

在代碼中查找applicationIconBadgeNumber。將其重置爲零,使用

[UIApplication sharedApplication].applicationIconBadgeNumber = 0

(你可以在設置這個應用程序委託的application: willFinishLaunchingWithOptions: method

+0

這會清除徽章圖標沒有問題。但是,一旦我收到新的推送通知,徽章圖標將再次顯示爲7。 – user3513175

+0

這就是使用徽章編號的要點。 – Aaron

0

您可以在UIApplication設置啓用遠程通知類型只有聲音和提醒,省略徽章類型:

- (UIRemoteNotificationType)enabledRemoteNotificationTypes { 
    return UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert; 
} 

從文檔,它看起來像用戶必須從設置應用改變這種能力:

返回的位掩碼中的值指示當前爲應用程序啓用的通知的類型。當應用程序調用registerForRemoteNotificationTypes:方法向Apple推送通知服務註冊時,會首先設置這些類型。此後,用戶可以在設置應用程序的通知首選項中修改這些接受的通知類型。此方法返回這些初始值或修改值。 iOS不會顯示或播放通知有效內容中指定的不屬於已啓用類型的通知類型。例如,應用程序可能會接受圖標徽章作爲通知形式,但可能會拒絕聲音和警報消息,即使它們是在通知有效內容中指定的。

+0

我已經在我的應用程序的delegate.m文件中實現了您的代碼。不過,我的徽章仍然出現。 – user3513175

1

如果您要推送通知,請將其設置在您的有效負載中。在您的json有效負載中查找徽章屬性並將其刪除。確保您也從通知類型中刪除該警報類型(徽章)以註冊。

相關問題