studio pantalla mostrar immersive full completa activity java android fullscreen display samsung-galaxy

java - pantalla - immersive mode android studio



Modo Samsung Galaxy S8 en pantalla completa (3)

Se puede apagar. Utilicé este tutorial para mi S8.

Cómo habilitar aplicaciones de pantalla completa en Galaxy S8 / S8 +

El último teléfono inteligente de Samsung tiene una característica interesante llamada pantalla completa (o en términos de marketing, pantalla infinita ). En este modo, la aplicación cubre también parte de la pantalla donde se encuentran los botones de inicio / atrás. Las aplicaciones habituales no cubren esta área, dejándola en negro. Pero los nativos de Samsung cubren esta área.

Pregunta: ¿Cómo lograr este efecto? ¿Qué tipo de declaración de manifiesto o llamada programática (posiblemente la API heredada de Samsung) debo usar?


para obtener la pantalla completa, debe omitir el método onWindowFocusChanged , crear un objeto decorView y agregarle indicadores System_UI.

@Override public void onWindowFocusChanged(boolean hasFocus){ super.onWindowFocusChanged(hasFocus); View decorView = getWindow().getDecorView(); if(hasFocus){ decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE |View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY // this flag do=Semi-transparent bars temporarily appear and then hide again |View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN // Make Content Appear Behind the status Bar |View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION // it Make Content Appear Behind the Navigation Bar |View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar |View.SYSTEM_UI_FLAG_HIDE_NAVIGATION); } }


Para habilitar el nuevo soporte de pantalla completa para Samsung Galaxy S8 y LG G6, agregue a AndroidManifest.xml bajo el elemento <application> :

<meta-data android:name="android.max_aspect" android:value="2.1" />

Donde el valor de 2.1 es la relación de aspecto 18.5: 9 (de forma predeterminada, su aplicación se establece de manera predeterminada en la relación máxima de 16: 9 - 1.86). Más información en: Blog de Android .

Alternativamente, puede establecer el siguiente atributo para Aplicación o Actividad:

android:resizeableActivity="true"

Debido a que la documentación indica ( link ):

No es necesario establecer una relación de aspecto máxima si el atributo android: resizeableActivity de una actividad se establece en true. Si su aplicación apunta al nivel de API 24 o superior, este atributo se establece de manera predeterminada en verdadero.