Incrémenter l'insigne de notification Push iPhone




objective-c xcode (4)

Après avoir reçu la notification à distance lorsque vous ouvrez App,

obtenir le numéro de badge actuel dans "didBecomeActive" Méthode de votre fichier d'adjoint en utilisant le code ci-dessous:

int badgeCount = [UIApplication sharedApplication].applicationIconBadgeNumber;
    badgeCount = badgeCount + 1;

Est-il possible d'incrémenter la valeur du badge à la réception de la notification. OU Dois-je envoyer le compte en tant que charge utile?

Si j'envoie la valeur de badge "1" à chaque fois, comment puis-je incrémenter la valeur de badge dans l'icône de l'application si l'application n'est pas ouverte.

J'ai utilisé ce code mais ne fonctionne pas.

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
    [UIApplication sharedApplication].applicationIconBadgeNumber = [UIApplication sharedApplication].applicationIconBadgeNumber + 1; 
}

Généralement, dans toutes les applications, les comptes de notification non lus sont conservés sur le serveur. Lorsque le serveur envoie une notification push à un jeton de périphérique particulier, il envoie le nombre de badges avec la charge utile. Une fois que l'appareil est averti et que votre application est en arrière-plan (ou supprimée), le système d'exploitation met automatiquement à jour le compteur de badge sur l'icône de votre application. Dans le cas où vous avez votre application en cours d'exécution, vous serez averti dans le

application:didReceiveRemoteNotification:

délégué et ainsi vous êtes en mesure de recevoir le nombre de badge à partir du (NSDictionary *) userInfo. Et ainsi vous êtes en mesure de mettre à jour le nombre de badges de l'icône de l'application en utilisant la fonction

[UIApplication sharedApplication].applicationIconBadgeNumber = [[[userInfo objectForKey:@"aps"] objectForKey: @"badgecount"] intValue];

Pensez que cela devrait vous aider.


Si l'application n'est pas ouverte, vous ne pourrez pas augmenter le badge sauf à partir de la charge utile.


Urban Airship soutient this utilisant leur caractéristique "autobadge".







push-notification