BAM

Les Live Activities d’iOS 16.1 : Une Avancée Subtile pour les Utilisateurs d’iPhone

Aujourd'hui, on vous transporte au cœur d’une des meilleures soirées de votre année professionnelle : la Summer Party. Mettez-vous dans l’ambiance. Au bureau, c’est l’effervescence.

L’heure fatidique du départ groupé approche dangereusement sauf que catastrophe, vous vous rendez compte que vos slides de présentation, prévue demain à 09h, ne sont pas du tout prêtes. Vous vous rendez à l’évidence, il va falloir rejoindre la fête en cours. Vous vous dites alors “pour aller plus vite, je prendrai un Uber”. Vos slides terminées, vous commandez votre course. Et là, surprise, fini les quatre notifications pour vous annoncer la confirmation de votre course et l’arrivée de votre chauffeur au point de rendez-vous : à la place, une notification persistante s’affiche sur votre écran verrouillé. Oh bonheur ! Elle vous donne toutes les informations dont vous avez besoin pour retrouver votre voiture. Elle s’actualise même automatiquement devant vos yeux ébahis. Merci Live Activity !

Que sont les Live Activities?

Les Live Activities, introduites avec iOS 16.1, représentent une avancée majeure pour les utilisateurs d'iPhone. Directement accessibles depuis l'écran de verrouillage ou via la Dynamic Island pour les utilisateurs d'iPhone 14 et versions ultérieures, elles offrent une série d'avantages clés :

  • Accès en temps réel à l'information : Que ce soit pour suivre le score d'un match de sport, vérifier l'état d'une commande de nourriture ou surveiller un entraînement en cours, les Live Activities permettent aux utilisateurs d'accéder en temps réel à ces informations sans avoir à déverrouiller leur appareil.
  • Réduction de la frustration : En moyenne, un utilisateur d'iPhone active son appareil 146 fois par jour. Grâce aux Live Activities, l'accès instantané à l'information évite la frustration liée au déverrouillage constant de l'appareil. D’ailleurs, cela s’inscrit parfaitement dans la logique Apple de limiter le verrouillage sur ses derniers modèles (avec un mode veille écran allumé).
  • Réduction du nombre de notifications : En moyenne, un utilisateur reçoit 46 notifications par jour (étude CleverTap) ! En affichant les informations directement sur l'écran de verrouillage, les Live Activities permettent également de réduire le nombre de push notifications envoyées aux utilisateurs, contribuant ainsi à une expérience globale plus agréable.

Où les trouver dans la vraie vie ?

  • Deliveroo : une Live Activity se déclenche automatiquement après une commande, permettant de suivre son statut de préparation puis son heure d’arrivée.
  • Citymapper : une Live Activity peut être déclenchée pour afficher le guidage d’un itinéraire sans avoir à déverrouiller son téléphone et ouvrir l’application.
  • FotMob : les utilisateurs sont invités à s’abonner à certaines équipes ou certains matchs. 30 minutes avant le début des matchs concernés, une Live Activity se déclenche et permet suivre les résultats des matchs de foot en direct. Ce use case est particulièrement intéressant puisque l’utilisateur peut jusqu’à oublier le match de foot, la Live Activity lui rappellera automatiquement !
  • Slopes : une Live Activity apparait automatiquement dès qu’un utilisateur déclenche une session de tracking : elle lui donne toutes les informations de performances en direct.
  • Apollo pour Reddit : les utilisateurs peuvent s’abonner à des threads Reddit pour faire apparaître les nouveautés sur une Live Activity. Ce use case est très intéressants pour les évènements de communauté, comme les évènements sportifs ou diffusions exceptionnelles (épisodes de série …) : les utilisateurs peuvent voir les nouvelles réactions et les nouveaux commentaires sans même déverrouiller leur écran.

Côté Tech

Implémentation

Pour implémenter techniquement les Live Activities dans une application iOS, vous devez soit

  • Ajouter du code à votre extension de widget existante
  • Créer une nouvelle extension de widget si votre application n'en comprend pas déjà une.

Dans les deux cas, vous devez activer Supports Live Activities dans votre fichier Info.plist

Les Live Activities utilisent la fonctionnalité WidgetKit et SwiftUI pour leur interface utilisateur, cela rend le code d'une Live Activity similaire au code de widget et permet le partage de code entre vos widgets et Live Activities.

Activity Kit

Le rôle d'Activity Kit est de gérer le cycle de vie de chaque Live Activity : vous utilisez son API pour demander, mettre à jour et terminer une Live Activity et pour recevoir des notifications push d'ActivityKit. Il est bien sûr possible de configurer vos Live Activities pour les mettre à jour à la réception d’une notification push, pour prévenir vos utilisateurs quand leur pizza est en route par exemple !

Quelques contraintes

  • La Live Activity peut vivre jusqu’à 8H si l’app ou l’utilisateur ne la termine pas avant, le système la retira ensuite de la Dynamic Island
  • La Live Activity vit dans sa propre “sandbox”, c'est-à-dire qu’à la différence des widgets, elle ne peut pas accéder au réseau ou à la géolocation : pour la mettre à jour, cf. le paragraphe précédent !

En multiplateforme, ça donne quoi ?

Une librairie expo https://github.com/bndkt/react-native-widget-extension pour ajouter une live activity à une application ReactNative cependant elle doit quand même être développée en Swift.

Pour Flutter, une librairie live_activities mais de la même façon, l’activité doit être développée en iOS.

Product Owner ?

Rejoins nos équipes