En Android 7.0 y versiones posteriores, los dispositivos pueden mostrar varias apps simultáneamente con el modo multiventana. Android admite tres configuraciones multiventana:
- La pantalla dividida es la opción multiventana predeterminada. que proporciona dos paneles de actividad en los que los usuarios pueden colocar de Google Chat.
- Formato libre permite a los usuarios cambiar dinámicamente el tamaño del paneles de actividad y tener más de dos apps visibles en su pantalla.
- Pantalla en pantalla (PIP) permite que los dispositivos Android reproducir contenido de video en una ventana pequeña mientras el usuario interactúa con otras apps.
Implementación
La compatibilidad con el modo multiventana está habilitada de forma predeterminada en Android 7.0 y versiones posteriores.
Para inhabilitarlo, establece la marca config_supportsMultiWindow
en
false
en el
config.xml.
El modo multiventana está inhabilitado de forma predeterminada en todos los dispositivos con poca RAM (dispositivos que
declarar ActivityManager.isLowRam()
). Dispositivos con poca RAM
ignora el valor de la marca config_supportsMultiWindow
.
Pantalla dividida
La experiencia predeterminada en Multiventana es el modo de pantalla dividida, donde el sistema La IU se divide en la mitad del dispositivo, en orientación horizontal o vertical. Los usuarios pueden cambiar el tamaño de la ventana arrastrando la línea divisoria de lado a lado. o de arriba abajo, según la orientación del dispositivo.
Después de habilitar la pantalla dividida, los fabricantes de dispositivos pueden elegir habilitar formato libre o PIP.
Android 8.0 y las versiones posteriores mejoran la pantalla dividida comprimiendo el selector cuando el usuario presione Página principal. Para obtener más información sobre la implementación, consulta Interacciones con pantalla dividida.
Formato libre
Después de habilitar el modo multiventana con el botón
config_supportsMultiWindow
, los fabricantes de dispositivos pueden
permiten la renderización en ventanas de formato libre. Este modo es muy útil en dispositivos más grandes,
como las tabletas.
Para admitir el modo de forma libre, habilita la
Sistema de PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT
función en
/android/frameworks/base/core/java/android/content/pm/PackageManager.java
y establece config_freeformWindowManagement
en true
en
config.xml.
<bool name="config_freeformWindowManagement">true</bool>
Pantalla en pantalla
Después de habilitar el modo multiventana con el botón
config_supportsMultiWindow
, los fabricantes de dispositivos pueden
asistencia
pantalla en pantalla, que permite que los usuarios miren
video mientras exploras otras actividades. Aunque esta función está orientada a
Dispositivos Android Television, es posible que otros tipos de dispositivos sean compatibles con esta función.
Para admitir el modo PIP, habilita el
PackageManager#FEATURE_PICTURE_IN_PICTURE
función del sistema en
/android/frameworks/base/core/java/android/content/pm/PackageManager.java
Para obtener más detalles sobre la implementación de PIP en dispositivos con Android 8.0 y más arriba,consulta la sección Pantalla en pantalla .
IU del sistema
Se admiten todas las IUs estándar del sistema según Documentación para desarrolladores sobre el modo multiventana.
Apps
Para admitir el modo multiventana en apps precargadas, consulta el Documentación para desarrolladores de Android
Validación
Para validar tu implementación del modo multiventana, ejecuta el CTS relacionado y sigue las instrucciones de prueba para el modo multiventana.
En Android 7.0, las pruebas están en
/platform/cts/hostsidetests/services/activitymanager/src/android/server/cts
En Android 8.0 y versiones posteriores, las pruebas están en
/platform/cts/tests/framework/base/activitymanager/src/android/server/am