Dynamic Island : qu'est-ce que c'est, notifications interactives de l'iPhone

Auteur : IT Sectr Publié le : 2026-02-16 Temps de lecture : 9 min

Dynamic Island est une zone interactive située en haut de l'iPhone 14 Pro et des modèles plus récents, combinant la découpe matérielle de l'appareil photo avec les notifications logicielles en un seul élément d'interface. Dynamic Island adapte sa forme et sa taille au type de contenu : appel, minuteur, musique, Live Activity, connexion AirPods. Les développeurs interagissent via l'API Dynamic Island basée sur ActivityKit et WidgetKit. En savoir plus sur Dynamic Island HIG.

Points clés

  • Dynamic Island — un élément d'UI logiciel-matériel sur l'iPhone 14 Pro et plus récent
  • Trois modes — compact, minimal et étendu avec différentes tailles de contenu
  • Live Activities — le principal moyen d'afficher du contenu personnalisé dans Dynamic Island
  • Animations — le système gère automatiquement les transitions entre les états de l'Island
  • Événements système — appels, AirPods, Face ID, charge intégrés dans Dynamic Island

Qu'est-ce que Dynamic Island sur iPhone ?

Dynamic Island est un élément d'interface de l'iPhone 14 Pro, 15 Pro et modèles plus récents qui utilise la zone autour de la caméra frontale et des capteurs Face ID pour afficher les notifications et Live Activity. Contrairement à l'ancienne encoche, qui était un élément noir statique, Dynamic Island change dynamiquement de forme et de taille : elle s'agrandit pour afficher un minuteur, se réduit pour une icône d'AirPods connectés, se transforme en rectangle pour les résultats sportifs.

Implémentation technique de Dynamic Island repose sur la découpe matérielle en forme de pilule de l'écran OLED et sur le traitement logiciel des pixels autour de celle-ci. Le système augmente la fréquence de rafraîchissement des pixels à 120 Hz dans la zone de l'Island et utilise l'anticrénelage pour des transitions fluides entre le contenu et la zone noire de la caméra. Le développeur ne programme pas l'Island directement — il crée du contenu via ActivityKit, et le système le place autour de la découpe automatiquement.

Perception de l'utilisateur — Dynamic Island transforme un inconvénient matériel en élément fonctionnel. Selon les recherches d'Apple, les utilisateurs perçoivent l'Island comme une partie naturelle de l'écran après seulement quelques jours d'utilisation. Les animations de mise en évidence et de changement d'attention — par exemple, une notification entrante déplace l'Island et affiche le contenu avec un effet d'expansion à 120 images par seconde.

Modes d'affichage de Dynamic Island

Dynamic Island prend en charge trois modes d'affichage de contenu, que le système sélectionne automatiquement en fonction du type et du nombre d'activités. Le développeur définit l'UI pour chaque mode dans WidgetBundle, mais ne contrôle pas quel mode est actif à un moment donné. Le système peut également afficher deux activités simultanément : une à gauche de la découpe, l'autre à droite.

ModeTailleContenuExemple
Compact~50pt de largeurIcône + texte courtMinuteur : icône d'horloge + 05:00
Minimal~22pt rondIcône d'application uniquementNotification de capture d'écran
Étendu~300pt x 80ptVue SwiftUI personnaliséeScore sportif avec logos

Transition entre les modes est effectuée avec une animation système de 0,4 à 0,6 seconde avec une courbe ease-in-out. Lorsqu'une nouvelle Activity apparaît, l'Island passe du mode compact au mode étendu. À la fin, elle se rétracte. L'utilisateur peut forcer le repli du mode étendu en glissant vers la gauche — l'Island passe en mode compact ou minimal. Le système replie également le mode étendu après 5 secondes d'inactivité si aucune mise à jour n'est attendue.

Deux activités — si deux applications ont des Live Activities actives, Dynamic Island les affiche des deux côtés de la découpe. Le côté gauche est la première Activity démarrée, le côté droit la seconde. S'il n'y a qu'une seule activité, elle occupe le côté gauche, le droit reste vide. En tapant sur un côté, l'Island s'agrandit et affiche le contenu de cette Activity. Le système décide lui-même quelle Activity a la priorité en cas de conflit.

Création de contenu pour Dynamic Island

Le contenu de Dynamic Island est créé exclusivement via Live Activity avec le framework ActivityKit. Le développeur définit quatre zones dans le code : compacte gauche (compactLeading), compacte droite (compactTrailing), minimale (minimal) et étendue (expanded). Chaque zone est une SwiftUI View qui reçoit l'état actuel de l'Activity via context. Si une zone n'est pas définie, l'Island n'affiche pas cette Activity dans le mode correspondant.

swift
struct DeliveryIsland: DynamicIsland {
    var body: some DynamicIslandContent {
        DynamicIslandExpandedContent {
            VStack(alignment: .leading) {
                Text(context.state.status)
                    .font(.headline)
                ProgressView(
                    value: context.state.progress
                )
                Text("ETA: \(context.state.minutes) min")
                    .font(.caption)
            }
        } compactLeading: {
            Image(systemName: "box.truck")
        } compactTrailing: {
            Text("\(context.state.minutes) min")
                .monospacedDigit()
        } minimal: {
            Image(systemName: "box.truck")
        }
    }
}

Limitations de SwiftUI dans Dynamic Island — composants disponibles : Text, Image, HStack, VStack, ZStack, Spacer, ProgressView, Button (uniquement via Link), Gauge. Interdits : ScrollView, List, TabView, animations, gesture recognizers. Palette de couleurs — uniquement System Colors (label, secondaryLabel, tint). Polices — tailles système de .caption à .title3. Les polices personnalisées et SF Symbols fonctionnent correctement.

Test de Dynamic Island — Xcode fournit un simulateur prenant en charge Dynamic Island. Sélectionnez iPhone 14 Pro ou 15 Pro comme appareil cible. ActivityKit simule différents modes de l'Island : le bouton Dynamic Island Mode dans le menu Debug de Xcode bascule entre compact, minimal et étendu. Pour tester plusieurs Activities simultanément, utilisez des schémas avec différents ActivityID ou lancez deux instances de l'application.

Événements système dans Dynamic Island

Événements système — appels, AirPods, Face ID, charge et autres — ont priorité sur les Live Activities personnalisées. Lorsqu'un événement système se produit, l'Island suspend l'affichage du contenu personnalisé et affiche le contenu système. Après la fin de l'événement système, l'Island revient au contenu personnalisé avec une animation. Le développeur ne peut pas annuler ou modifier les événements système — ils sont gérés au niveau du système d'exploitation iOS.

Événement systèmeFormat d'affichagePriorité
Appel entrantCarte minimale avec nom du contactHaute
AirPodsAnimation + charge de la batterieMoyenne
Face IDIcône de cadenasMoyenne
ChargeIcône d'éclair + pourcentageBasse
AirDropProgression du transfertMoyenne
Capture d'écranAnimation d'obturateurBasse

Appel entrant — l'événement système le plus important. Dynamic Island affiche le nom de l'appelant à gauche de la découpe et la durée/statut à droite. Pendant un appel actif, l'Island n'affiche aucune Live Activity personnalisée. L'utilisateur peut agrandir l'Island pour ouvrir l'écran d'appel ou la réduire pour continuer à travailler dans l'application avec l'appel actif en arrière-plan.

Connexion AirPods — lors de l'ouverture du boîtier à proximité de l'iPhone, Dynamic Island anime la connexion et affiche la charge de chaque écouteur et du boîtier. L'animation dure 2 à 3 secondes, après quoi l'Island revient à son état précédent. Si l'utilisateur n'avait pas de Live Activities actives, l'Island reste vide. Les AirPods Pro 2 affichent également le volume et le mode de suppression du bruit lors de l'appui sur la tige.

Bonnes pratiques de développement pour Dynamic Island

Bonnes pratiques Dynamic Island d'Apple sont recommandées pour garantir une expérience utilisateur de qualité. Le mode compact doit afficher uniquement les informations les plus importantes — une icône et un seul nombre ou un bref libellé. Le mode étendu — uniquement les informations clés sans éléments redondants. Évitez de placer du texte en mode compact s'il dépasse 20 caractères — le système tronque le texte avec des points de suspension.

Mises à jour push pour Dynamic Island — utilisez ActivityKit push pour les mises à jour rares (statut de commande, résultats sportifs) et les mises à jour locales pour les minuteurs fréquents ou les chronomètres. Les notifications push transitent par APNs et mettent 0,5 à 2 secondes à apparaître dans l'Island. StaleDate — définissez une date d'expiration du contenu : si une mise à jour n'arrive pas à temps, le système affiche un fond gris à la place du contenu, signalant à l'utilisateur des données obsolètes.

swift
func updateDelivery(activity: Activity<DeliveryAttributes>) {
    Task {
        let newContent = ActivityContent(
            state: DeliveryAttributes.ContentState(
                status: .delivered,
                estimatedMinutes: 0
            ),
            staleDate: Date().addingTimeInterval(300)
        )
        await activity.update(newContent)
        // Fin de l'Activity dans 2 secondes
        try? await Task.sleep(nanoseconds: 2_000_000_000)
        await activity.end(newContent)
    }
}

Consommation d'énergie — Dynamic Island et Live Activities ont un impact minimal sur la batterie grâce à l'optimisation matérielle de l'écran OLED. Les pixels noirs autour de la découpe sont éteints et le contenu est rendu sur un coprocesseur dédié. La consommation moyenne d'une Live Activity est inférieure à 1 % de batterie par heure d'utilisation avec une mise à jour toutes les 5 minutes. Le système suspend automatiquement l'Island lorsque la batterie est faible (moins de 20 %) ou en mode d'économie d'énergie.

Design pour Dynamic Island ne nécessite pas d'adaptation de l'UI principale de l'application — l'Island fonctionne indépendamment de l'écran actif. Les couleurs de la Live Activity doivent correspondre au thème du système (clair/sombre) via les Color Assets système. SF Symbols sont préférables aux icônes personnalisées — ils s'affichent correctement dans tous les modes de l'Island et bénéficient d'un support intégré de Dynamic Type.

Questions fréquentes

À quoi ressemble Dynamic Island sur les anciens iPhone ?

Dynamic Island est disponible uniquement sur iPhone 14 Pro, 14 Pro Max, 15 Pro, 15 Pro Max et plus récents avec iOS 16.1+. Sur les anciens iPhone avec encoche, Dynamic Island ne s'affiche pas — Live Activity apparaît comme une bannière normale sur l'écran de verrouillage. Le développeur n'a pas besoin d'écrire un code différent : le système adapte lui-même l'interface aux capacités de l'appareil.

Peut-on placer deux Live Activities dans Dynamic Island ?

Dynamic Island prend en charge l'affichage de deux activités simultanément — elles sont positionnées à gauche et à droite de la découpe de l'appareil photo. S'il n'y a qu'une seule activité, elle occupe le côté gauche et le côté droit reste à l'état compact. En tapant sur un côté, l'Island s'agrandit et affiche le contenu de l'Activity correspondante.

Quels événements système utilisent Dynamic Island ?

Événements système dans Dynamic Island : appel entrant avec carte minimale et nom du contact, connexion AirPods avec animation et charge de la batterie, Face ID avec icône de cadenas, charge de l'appareil avec pourcentage, mode modem, changement de volume, activation du mode silencieux, AirDrop avec progression du transfert et capture d'écran avec animation d'obturateur.

Comment ajouter la prise en charge de Dynamic Island à une application ?

Dynamic Island ne nécessite pas d'API séparée — elle affiche les Live Activities créées via ActivityKit avec WidgetKit. L'application enregistre une Activity avec la configuration DynamicIsland, définit des vues SwiftUI compacte, minimale et étendue. Le système l'affiche automatiquement dans Dynamic Island sur les appareils pris en charge.

Existe-t-il des limitations de contenu dans Dynamic Island ?

Dynamic Island est limitée à trois états visuels de différentes tailles : compact jusqu'à 50 pt, minimal jusqu'à 22 pt, étendu jusqu'à 300 pt. En mode compact, il n'est pas recommandé de placer un texte de plus de 20 caractères. Seuls les composants SwiftUI système sont disponibles — Text, Image, ProgressView, Gauge. Les polices et couleurs personnalisées sont limitées à la palette système.

Résumé

  • Dynamic Island — zone interactive autour de la découpe de l'appareil photo sur iPhone 14 Pro et plus récents
  • Trois modes — compact, minimal et étendu avec transitions gérées par le système
  • Live Activity — le seul moyen de contenu personnalisé via ActivityKit et WidgetKit
  • Événements système — appels, AirPods, Face ID, charge ont priorité sur le contenu personnalisé
  • Limitations SwiftUI — seulement Text, Image, ProgressView, HStack, VStack, ZStack, Gauge
  • Consommation d'énergie — moins de 1 % de batterie par heure d'utilisation avec des mises à jour toutes les 5 minutes
  • Deux activités — l'Island affiche jusqu'à deux activités simultanément des deux côtés de la découpe

Nous développerons une application mobile clé en main

IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.

Discuter du projet

Lisez aussi