2011-11-12 10 views
6

Quiero respetar la intención de mis usuarios y no llamar al [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(...)] si han desactivado las notificaciones remotas para mi aplicación.iOS5: cómo determinar si el Centro de notificaciones de la aplicación está activado/desactivado

Al llamar al UIRemoteNotificationType enabledTypes = [[UIApplication sharedApplication] enabledRemoteNotificationTypes], obtengo la información sobre qué tipos de notificaciones están habilitadas para mi aplicación. Sin embargo, el Centro de notificaciones para esta aplicación se puede desactivar y todavía obtengo el tipo de notificación habilitado anteriormente desde este método hasta que seleccione "Ninguno".

Por lo tanto, mi aplicación piensa que las notificaciones están habilitadas, incluso cuando no lo son.

¿Hay alguna forma de averiguar programáticamente el estado del Centro de notificaciones para mi aplicación? (ENCENDIDO APAGADO).

+0

Si las notificaciones están desactivadas y usted se registra, ¿obtiene '-application: didRegisterForRemoteNotificationsWithDeviceToken:' o '-application: didFailToRegisterForRemoteNotificationsWithError:'? No me sorprendería si se invoca este último. –

+1

Para mí, solo se ejecuta el primer método cuando la configuración del centro de notificación está activada o desactivada. Pero la pregunta es cómo decir a qué se establece desde ese método. –

+0

Llamar a '[[UIApplication sharedApplication] registerForRemoteNotificationTypes: (...)]' no hará nada que el usuario pueda ver si las notificaciones de su aplicación están desactivadas en Configuración, ¿por qué no desea llamarlo cada vez? –

Respuesta

9

No confunda "en el centro de notificaciones" con "notificaciones push habilitadas". Puedo eliminar una aplicación del centro de notificaciones pero aún recibir notificaciones push en forma de números de identificación, por lo que su método anterior debería funcionar bien.

+0

Eso es útil, pero ¿hay alguna forma de verificar si la aplicación está en el centro de notificaciones de forma pragmática? –

+0

No creo que haya ninguna forma de saber cuáles son las configuraciones de notificación del usuario para su aplicación más allá de los métodos de delegado de aplicación para registrarse y no registrarse para notificaciones remotas. –

Cuestiones relacionadas