Prendre en charge le mode multifenêtre

Sur Android 7.0 ou version ultérieure, les appareils peuvent afficher plusieurs applications en mode multifenêtre. Android prend en charge trois configurations multifenêtres:

  • L'écran partagé est le mode multifenêtre par défaut. qui fournit deux volets d'activité dans lesquels les utilisateurs peuvent placer applications.
  • Forme libre : permet aux utilisateurs de redimensionner dynamiquement la volets d'activité et ont plus de deux applications visibles à l'écran.
  • La fonctionnalité Picture-in-picture (PIP) permet aux appareils Android de : lire du contenu vidéo dans une petite fenêtre pendant que l'utilisateur interagit d'autres applications.

Implémentation

Le mode multifenêtre est activé par défaut sur Android 7.0 ou version ultérieure. Pour la désactiver, définissez l'option config_supportsMultiWindow sur false sur votre appareil config.xml.

Le mode multifenêtre est désactivé par défaut sur tous les appareils à faible RAM (appareils qui déclarer ActivityManager.isLowRam()). Appareils à faible RAM ignore la valeur de l'option config_supportsMultiWindow.

Écran partagé

Par défaut, le mode multifenêtre est le mode Écran partagé, L'interface utilisateur est divisée au milieu de l'appareil en mode portrait ou paysage. Les utilisateurs peuvent redimensionner la fenêtre en faisant glisser la ligne de séparation d'un côté à l'autre. ou de haut en bas, selon l'orientation de l'appareil.

Après avoir activé l'écran partagé, les fabricants d'appareils peuvent choisir de l'activer à forme libre ou PIP.

Android 8.0 ou version ultérieure améliore l'écran partagé en compressant le lanceur d'applications lorsque l'utilisateur appuie sur Accueil. Pour en savoir plus sur l'implémentation, consultez Interactions avec l'écran partagé :

Format libre

Après avoir activé le mode multifenêtre avec config_supportsMultiWindow, les fabricants d'appareils peuvent permettent le fenêtrage libre. Ce mode est particulièrement utile sur les appareils plus grands, comme les tablettes.

Pour prendre en charge le mode Format libre, activez la PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT système fonctionnalité dans /android/frameworks/base/core/java/android/content/pm/PackageManager.java et définissez config_freeformWindowManagement sur true dans config.xml.

    <bool name="config_freeformWindowManagement">true</bool>
    

Picture-in-picture

Après avoir activé le mode multifenêtre avec config_supportsMultiWindow, les fabricants d'appareils peuvent assistance Picture-in-picture, qui permet aux utilisateurs vidéo tout en parcourant d'autres activités. Bien que cette fonctionnalité vise à Les téléviseurs Android et d'autres types d'appareils sont susceptibles de prendre en charge cette fonctionnalité.

Pour prendre en charge le mode PIP, activez PackageManager#FEATURE_PICTURE_IN_PICTURE fonctionnalité système dans /android/frameworks/base/core/java/android/content/pm/PackageManager.java

Pour en savoir plus sur l'implémentation de la fonctionnalité PIP sur les appareils équipés d'Android 8.0 et vous pouvez appuyer sur l'icône Picture-in-picture .

UI du système

Compatible avec toutes les interfaces système standards Documentation pour les développeurs sur le mode multifenêtre

Applis

Pour prendre en charge le mode multifenêtre pour les applications préchargées, consultez le Documentation Android pour les développeurs

Validation

Pour valider votre implémentation du mode multifenêtre, exécutez l'outil CTS associé. et suivez les Instructions pour tester le mode multifenêtre.

Pour Android 7.0, les tests sont en cours /platform/cts/hostsidetests/services/activitymanager/src/android/server/cts Sur Android 8.0 et versions ultérieures, les tests sont en cours /platform/cts/tests/framework/base/activitymanager/src/android/server/am