UILocalNotification no funciona

Estoy intentando hacer una aplicación de chat en la que, cuando estás en una conversación con otra persona y recibes un post de otra persona, muestras una notificación local.

Hasta aquí implementé esto en mi opinión:

else { // in case the user that sent the message // is not the same as the one you are currently talking to var partOfIt = msg.componentsSeparatedByString("\n")[1].componentsSeparatedByString(":")[6] as NSString var tuple = (partOfIt,fromuser) println("open up a new view") let notification: UILocalNotification = UILocalNotification() notification.timeZone = NSTimeZone.defaultTimeZone() let dateTime = NSDate(timeIntervalSinceNow: 2) notification.fireDate = dateTime notification.alertBody = "Woww it works!!" notification.alertAction = "Testing notifications on iOS8" UIApplication.shanetworkingApplication().scheduleLocalNotification(notification) 

Desafortunadamente, no pasa nada excepto la println . He permitido que se muestren notifications cuando uso mi aplicación.

Además, también quiero abrir una nueva vista. cuando el usuario hace clic en esta notificación, ¿cómo hago esto?

¿Es algo que estoy haciendo mal?

Las notifications aparecen solo cuando tu aplicación está en segundo plano. Incluso los locales. Dado que envía la notificación en 2 segundos, supongo que su aplicación sigue abierta.

Por cierto, aún debería poder ver la notificación en el centro de notifications (incluso si no tiene ninguna "barra emergente").

  1. El día del fuego debe ser el futuro.
  2. la aplicación debe estar ejecutándose en context o está cerrada.
  3. una cosa más, no te olvides de mostrar la consulta si quieres permitir push, agrega el código siguiente a appDelegate:

     - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if ([UIDevice currentDevice].systemVersion.floatValue >= 8.0) { UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge | UIUserNotificationTypeAlert | UIUserNotificationTypeSound categories:nil]; [application registerUserNotificationSettings:settings]; } } 

Las notifications locales se manejan en AppDelegate . Si su aplicación se está ejecutando, debe implementar la application:didReceiveLocalNotification: si no, debería manejarla en didFinishLaunchingWithOptions (la notificación local se encuentra en UILocalNotificationKey o algo así).