Utilisation du Centre de notifications Mac OS X

De Appmethod Topics
Aller à : navigation, rechercher

Remonter à Développement d'applications Mac OS X


Les notifications locales permettent aux applications en arrière-plan ou inactives de prévenir les utilisateurs qu'un événement intéressant ou associé à l'application s'est produit. Cette rubrique décrit les étapes de base à suivre pour utiliser les notifications locales sur votre application Mac OS X.

Mountain Lion (Mac OS X 10.8) a ajouté la fonctionnalité de notification et le Centre de notifications. Le principe est très similaire à ce qui existe sur iOS, où vous pouvez soit planifier les notifications locales, soit les présenter immédiatement.

A propos des notifications

Il existe trois types de notifications dans OS X :

Type de notification Description Aperçu

Alerte

Apparaît dans le coin supérieur droit du Mac, mais l'alerte reste affichée jusqu'à ce que l'utilisateur engage une action.

Notification Alert.png

Bannière

Apparaît brièvement dans le coin supérieur droit du Mac, puis disparaît de l'écran en glissant vers la droite.

Notification Banner.png

Badge

Un badge rouge avec un numéro apparaît dans le coin supérieur droit de l'icône d'une application. Le badge donne le décompte du nombre de notifications en attente dans une app.

Remarque : Le badge n'est actuellement pas pris en charge par FireMonkey. Pour un exemple d'implémentation des badges sans utiliser le composant TNotificationCenter, voir : OSX Dock Badges

Accès au service de notifications

FireMonkey fournit le composant TNotificationCenter qui vous permet d'accéder facilement au service de notifications.

Pour accéder au service de notifications, procédez comme suit :

  • Pour les apps Object Pascal, ajoutez les deux unités suivantes à la clause uses, si elles ne sont pas présentes :
uses
  FMX.Platform, System.Notification;
  • Dans les apps C++, ajoutez les opérateurs include suivants dans le fichier d'en-tête du projet :
#include <FMX.Platform.hpp>
#include <System.Notification.hpp>

Centre de notifications sur Mac OS X

Toutes les notifications (EN) sur lesquelles aucune action n'a été engagée sont transférées dans le Centre de notifications. Lorsqu'une notification pop-up s'affiche et que l'utilisateur ne clique pas dessus, elle est transférée dans le Centre de notifications. Les alertes restent dans le Centre de notifications jusqu'à ce que l'utilisateur engage l'action appropriée.

Vous pouvez facilement afficher ou masquer le Centre de notifications en cliquant sur Notification Center icon.png sur le côté droit de la barre de menus. Lorsque l'utilisateur clique sur une notification dans le Centre de notifications, l'application s'ouvre, ou s'affiche au premier plan.

Notification Center on Menu Bar.png

Une notification peut apparaître comme une bannière pop-up ou comme une alerte lorsque l'application s'exécute en arrière-plan ou est inactive. L'utilisateur peut décider du format de présentation des notifications dans Mac OS X :

Notifications Icon.png

  1. Ouvrez Préférences système > Notifications.
  2. Trouvez l'app sur la gauche.
  3. Sélectionnez Aucune, Bannières ou Alertes.
Remarque : Lorsque l'utilisateur sélectionne Aucune, aucune notification pop-up ne s'affiche, et les notifications sont directement transférées dans le Centre de notifications. Par défaut, votre application affiche la bannière de notification.

L'écran suivant affiche la fenêtre de configuration du Centre de notifications :

OSXNotificationCenter.png

Création de notifications

Pour permettre à votre application d'afficher des notifications locales sur OS X, vous devez créer une instance de l'objet classe TNotification. La méthode System.Notification.TNotificationCenter.CreateNotification vous permet de créer cette instance.

Lorsque votre app crée un objet local-notification, elle peut soit planifier la notification avec le système d'exploitation, soit la présenter immédiatement. Les notifications locales sont parfaitement adaptées à des apps avec un comportement basé sur la notion de temps. Vous pouvez spécifier à quelle heure le système d'exploitation livre la notification, option connue sous le nom de fire date (date de déclenchement). Vous pouvez aussi répéter une notification planifiée.

Pour inclure des messages de notification dans vos apps OS X :

  1. Créez une instance de la classe TNotification.
  2. Créez une notification à l'aide de CreateNotification.
  3. Définissez les champs Name, AlertBody et FireDate fields.

Les notifications restent dans le Centre de notifications jusqu'à ce que vous les supprimiez.

Chaque message de notification est identifié par la propriété Name de l'objet TNotification.

Pour mettre à jour ou supprimer une notification :

  • Pour mettre à jour une notification planifiée, appelez la méthode ScheduleNotification une nouvelle fois avec une instance de TNotificationCenter qui porte le même nom (propriété Name).
  • Pour annuler une notification, appelez la méthode CancelNotification avec l'identificateur que vous avez utilisé.
  • Pour annuler toutes les notifications, appelez la méthode CancelAll.

Voir aussi