Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
314 L’art du développement Android
Android fournit des icônes dans la barre d’état, des avertissements lumineux et d’autres
indicateurs que l’on désigne globalement par le terme de notifications.
Votre téléphone actuel peut posséder ce type d’icône pour indiquer le niveau de charge de
la batterie, la force du signal, l’activation de Bluetooth, etc. Avec Android, les applications
peuvent ajouter leurs propres icônes dans la barre d’état et faire en sorte qu’elles n’apparaissent que lorsque cela est nécessaire (lorsqu’un message est arrivé, par exemple).
Vous pouvez lancer des notifications via le NotificationManager, qui est un service du
système. Pour l’utiliser, vous devez obtenir l’objet service via un appel à la méthode
getSystemService (NOTIFICATION_SERVICE) de votre activité. Le NotificationManager
vous offre trois méthodes : une pour avertir (notify()) et deux pour arrêter d’avertir
(cancel() et cancelAll()).
La méthode notify() prend en paramètre une Notification, qui est une structure décrivant la forme que doit prendre l’avertissement. Les sections qui suivent décrivent tous les
champs publics mis à votre disposition (mais souvenez-vous que tous les terminaux ne
les supportent pas nécessairement tous).
Notifications matérielles
Vous pouvez faire clignoter les LED du terminal en mettant lights à true et en précisant
leur couleur (sous la forme d’une valeur #ARGB dans ledARGB). Vous pouvez également
préciser le type de clignotement (en indiquant les durées d’allumage et d’extinction en
millisecondes dans ledOnMS et ledOffMS).
Vous pouvez faire retentir un son en indiquant une Uri vers un contenu situé, par exemple,
dans un ContentManager (sound). Considérez ce son comme une sonnerie pour votre
application.
Enfin, vous pouvez faire vibrer le terminal en indiquant les alternances de la vibration
(vibrate) en millisecondes dans un tableau de valeurs long. Cette vibration peut être le
comportement par défaut ou vous pouvez laisser le choix à l’utilisateur, au cas où il aurait
besoin d’un avertissement plus discret qu’une sonnerie.
Icônes
Alors que les lumières, les sons et les vibrations sont destinés à faire en sorte que l’utilisateur regarde son terminal, les icônes constituent l’étape suivante consistant à signaler ce
qui est si important.
Pour configurer une icône pour une Notification, vous devez initialiser deux champs
publics : icon, qui doit fournir l’identifiant d’une ressource Drawable représentant l’icône
voulue, et contentIntent, qui indique le PendingIntent qui devra être déclenché
lorsqu’on clique sur l’icône. Vous devez vous assurer que le PendingIntent sera capturé
Livre Android.book Page 314 Dimanche, 8. novembre 2009 12:23 12
Précédent

- 329/391

Suivant