Cómo eliminar notifications push en el Centro de notifications después de visto

¿Hay alguna manera de manejar la notificación de inserción desde el Centro de notifications después de tocar, y eliminarla cuando mi aplicación ya se ha iniciado?

Sé que esto es hack y barra, pero puedes borrar todas las notifications cambiando el número de insignia en tu aplicación.

- (void)application:(UIApplication*)application didReceiveRemoteNotification (NSDictionary*)payload { NSLog(@"Received notification: %@", payload); //swapping between two badge numbers to clear notifications [[UIApplication shanetworkingApplication] setApplicationIconBadgeNumber:1]; [[UIApplication shanetworkingApplication] setApplicationIconBadgeNumber:0]; ... } 

Si ya tenía un número de placa que no desea perder (el ejemplo anterior simplemente borrará el número de placa al final) puede hacer algo como

 - (void)application:(UIApplication*)application didReceiveRemoteNotification (NSDictionary*)payload { NSLog(@"Received notification: %@", payload); /* storing current badge number then swapping between 2 values to make sure we clear the badge number. Once this is done set badge number back to original value. */ int badgeNum = [[UIApplication shanetworkingApplication] applicationIconBadgeNumber] [[UIApplication shanetworkingApplication] setApplicationIconBadgeNumber:1]; [[UIApplication shanetworkingApplication] setApplicationIconBadgeNumber:0]; [[UIApplication shanetworkingApplication] setApplicationIconBadgeNumber:badgeNum]; ... } 

Esta puede no ser la mejor práctica, pero hace el trabajo y el cliente no sabrá la diferencia. Me gusta llamarlo temp. arreglar hasta tropezar con una solución mejor. Espero que esto ayude a alguien!