Recherche…


Introduction

iOS 10 nous a donné UserNotifications.framework , la nouvelle API pour les notifications locales / distantes. Il offre l'affichage des pièces jointes aux médias ou la réponse aux messages directement depuis la notification.

Le contenu de la notification est constitué de: titre, sous-titre, corps et pièce jointe. La pièce jointe peut contenir des images / gifs / vidéos jusqu'à 50 Mo.

Extension de contenu de notification

Pourquoi en avons-nous besoin?

L'extension de contenu nous aide à créer une interface utilisateur personnalisée lors de la diffusion des notifications.

Vous utilisez ce cadre pour définir une extension qui reçoit les données de notification et fournit la représentation visuelle correspondante. Votre extension peut également répondre aux actions personnalisées associées à ces notifications.

la mise en oeuvre

  1. Dans la fenêtre xCode Navigator , accédez à la section Targets . Appuyez sur Add New Target .
  2. Sélectionnez le modèle d' Notification Content Extension :

entrer la description de l'image ici

  1. Dans votre fichier info.plist , définissez l'identificateur de la clé UNNotificationExtensionCategory :

entrer la description de l'image ici

NSExtensionAttributes :

UNNotificationExtensionCategory (Obligatoire)

La valeur de cette clé est une chaîne ou un tableau de chaînes. Chaque chaîne contient l'identificateur d'une catégorie déclarée par l'application à l'aide de la classe UNNotification Category.

UNNotificationExtensionInitialContentSizeRatio (Obligatoire)

Nombre représentant la taille initiale de la vue de votre contrôleur de vue exprimée sous la forme d'un rapport entre sa hauteur et sa largeur.

UNNotificationExtensionDefaultContentHidden (Facultatif)

Lorsqu'il est défini sur YES, le système affiche uniquement votre contrôleur d'affichage personnalisé dans l'interface de notification. Lorsqu'il est défini sur NO, le système affiche le contenu de la notification par défaut en plus du contenu de votre contrôleur de vue.

UNNotificationExtensionOverridesDefaultTitle (Facultatif)

La valeur de cette clé est une valeur booléenne. Lorsqu'il est défini sur true, le système utilise la propriété title de votre contrôleur de vue comme titre de la notification. Lorsqu'il est défini sur false, le système définit le titre de la notification sur le nom de votre application. Si vous ne spécifiez pas cette clé, la valeur par défaut est définie sur false.

  1. Créer une vue personnalisée dans le fichier NotificationViewController.swift
  2. Ajoutez une nouvelle category key et définissez sa valeur en fonction de ce que nous avons tapé dans Info.plist (étape 3):

Pousser:

{
 aps: {
 alert: { … },
 category: 'io.swifting.notification-category' 
 }
}

Local:

let mutableNotificationContent = UNMutableNotificationContent()
mutableNotificationContent.category = "io.swifting.notification-category"
mutableNotificationContent.title = "Swifting.io Notifications"
mutableNotificationContent.subtitle = "Swifting.io presents"
mutableNotificationContent.body = "Custom notifications"

Consultez également la référence officielle de l'API: https://developer.apple.com/reference/usernotificationsui/unnotificationcontentextension?utm_source=swifting.io&utm_medium=web&utm_campaign=blog%20post



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow