如何请求许可或自动设置 phone 的全屏设置 - android studio

How to ask permission or automatically set the phone's full screen on settings - android studio

我正在尝试使用以下代码将 activity 设置为全屏:

private void hideSystemUI() {
    View decorView = getWindow().getDecorView();
    decorView.setSystemUiVisibility(
        View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
                | View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_FULLSCREEN);

    }

但由于设置 -> 显示某些手机需要允许应用程序使用全屏模式的情况,我在某​​些手机上看到黑色导航栏。为了解决这个问题,我决定在 activity 膨胀时需要实施权限检查器。如果有其他方法请告诉我,我会尽力实现。

编辑: 这是我正在谈论的电话条件的link: https://www.gottabemobile.com/how-to-enable-full-screen-apps-on-galaxy-s10/

在您的清单文件中放入

android:theme="@style/Theme.Design.NoActionBar"

android:theme="@style/AppTheme"  

并在您的 activity 调用中 hideSystemUI();在设置内容视图之前 像这样:

final int flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE
            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
            | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_FULLSCREEN
            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;

    getWindow().getDecorView().setSystemUiVisibility(flags);
    setContentView(R.layout.activity_main);

这个问题发生在我的 2 个不同的设备上,这是因为前置摄像头缺口或屏幕切口。

我在 oncreate() 中使用了这段代码:

hideSystemUI();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { 
getWindow().getAttributes().layoutInDisplayCutoutMode = 
WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES; }

或者在主题样式xml文件中添加这一行:

<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>