Saltar al contenido

Crear notificaciones Rich Push de iOS

Añadamos algunas acciones a nuestras notificaciones de Rich Push. Modificar la carga útil añadiendo la tecla «categoría» para notificar que queremos mostrar acciones.

123456789101112{"aps":{"alert": "Hello!", "sound": "default", "mutable-content":1, "badge":1, "category": "myCategoryName"}, "data":{"attachment-url": "https://example.com/attachment.jpg"}}

json

Crear notificaciones Rich Push de iOS
Crear notificaciones Rich Push de iOS

En la lista autogenerada del Servicio de Notificación Info.plist, añada una matriz UNNotificationExtensionCategory con hasta 4 identificadores de acción. Estos pueden verse como «Artículo 0» y «Artículo 1» en la imagen de abajo:

Ajuste la categoría de notificación en su función didReceiveRequest en el archivo NotificationService.swift:

1234567...let meowAction =UNNotificationAction(identificador: "meow", título: "Meow", opciones:[])let pizzaAction =UNNotificationAction(identificador: "pizza", título: "Pizza? ", opciones:[])let category =UNNotificationCategory(identificador: "miNombreDeCategoría", acciones:[miauAcción, pizzaAcción], intentIdentificadores:[], opciones:[])UNUserNotificationCenter.current().setNotificationCategories([category])...

swift

¡Tan simple como eso! Time para una vista previa:

Por último, añada la lógica de los botones de notificación en el archivo AppDelegate.swift, utilizando los identificadores que especificamos anteriormente en el archivo Info.plist. El método que llamamos es didReceive response from the UNUserNotificationCenterDelegate

123456789101112...funcuserNotificationCenter(_ centro:UNUserNotificationCenter, didRecibió respuesta:UNNotificationResponse, withCompletionHandler completionHandler: @escaping()->Void){if response.actionIdentifier =="meow"{...}if response.actionIdentifier =="pizza"{...}completionHandler()}...

swift

¡Advertencia! ¡No te olvides de actualizar el número del icono de la placa cuando sea necesario!

1application.applicationIconBadgeNumber =0

swift