ios parse.com

ios - Advertencia de Parse de didReceiveRemoteNotification: fetchCompletionHandler



parse.com (5)

Creo que @djshiow no está resolviendo tu problema.

Necesita agregar lo siguiente en su archivo info.plist:

1) Agregue una nueva fila y, en la columna de la izquierda, seleccione Modos de fondo requeridos .

2) En la fila de Artículo 0, haga clic en la columna de la derecha y escriba: notificación remota . Presione Enter.

Fuente: http://hayageek.com/ios-silent-push-notifications/

Me aparece un error después de agregar este código de parse.com:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { if (application.applicationState == UIApplicationStateInactive) { [PFAnalytics trackAppOpenedWithRemoteNotificationPayload:userInfo]; } }

Realmente no entiendo lo que está pasando, pero recibo esta advertencia en el registro:

Ha implementado - [application: didReceiveRemoteNotification: fetchCompletionHandler:], pero aún necesita agregar "notificación remota" a la lista de sus UIBackgroundModes compatibles en su Info.plist.

Creo que al agregar en su archivo UIBackgroundModes - remote-notification solucionaría el problema,

Pero cuando hago eso, cambia las palabras a lo siguiente:

Required Background Modes -> La App downloads content in response to push notifications

Lo que mi aplicación no hace, por lo que estoy confundido en cuanto a por qué estoy haciendo esto en primer lugar.


Cuando usa el nuevo método didReceive ... se espera que haga dos cosas:

  1. Agregue la entrada necesaria en su plist
  2. Agregue un controlador de finalización que manejará el evento para manejar los datos

Si no desea descargar ningún dato, puede agregarlo a su método didReceive ...

completionHandler(.NoData)


En Xcode 6:

  • En Project Navigator, haga clic en el proyecto
  • En la lista Proyectos y objetivos, haga clic en el objetivo.
  • Haz clic en Capacidades
  • Expande y activa los modos de fondo
  • Haga clic en notificaciones remotas

Esto agregará la tecla de Required background modes y la App downloads content in response to push notifications valor de las App downloads content in response to push notifications a info.plist .


Si no quiere agregar manualmente la clave en su archivo .plist , aquí hay una versión gráfica de la respuesta de @MurraySagal, siga los pasos del 1 al 7 y habrá terminado. :)

Nota: Si no puede leer los pasos, puede alejar la pestaña actual mediante la combinación de Comando + + (para acercar) y Comando + - (para alejar). Si Command no funciona, puede intentar con Ctrl .


Si no tiene la intención de recuperar datos en respuesta a una notificación remota, creo que puede implementar este método delegado:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo

p.ej

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { if (application.applicationState == UIApplicationStateInactive) { [PFAnalytics trackAppOpenedWithRemoteNotificationPayload:userInfo]; } }

en lugar del actual que estás usando.