设置安卓APP全屏运行且不能退回桌面

我们在做特定设备如自动取餐柜等需要安卓大屏的应用场景,安卓大屏应该运行我们的APP全屏运行,且不允许用户返回桌面,那么应该怎样设置呢?一下是方法 要使安卓应用程序全屏运行且不能返回桌面,您可以按照以下步骤进行操作:

1在您的Android应用程序的代码中,使用以下语句启用全屏模式:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
        WindowManager.LayoutParams.FLAG_FULLSCREEN);

这将使应用程序全屏运行,隐藏状态栏和导航栏。 如果使用uniapp该如何设置APP全屏呢,方法如下: 首先全屏并非状态栏透明或变色,而是没有状态栏,也就是看不见电量、信号那条了。 全屏常见于横屏游戏,一般场景应该使用状态栏变色或状态栏透明。 如果想要全屏模式,在应用的manifest.json文件中添加“fullscreen”节点: Boolea值类型,true表示全屏,false表示非全屏,默认值为false。

App云端打包支持全屏操作方式: 双击应用的manifest.json文件,切换到“代码视图”,在根节点下添加fullscreen节点:**

Ctrl+S保存,并提交App云端打包

在应用中可调用5+ API动态改变应用是否全屏显示的状态

function fullscreen(){  
        // 设置应用全屏显示!  
        plus.navigator.setFullscreen(true);  
}  
function unfullscreen(){  
        // 设置应用非全屏显示!  
        plus.navigator.setFullscreen(false);  
}  
function isfullscreen(){  
        // 查询应用当前是否全屏显示!  
        console.log( "是否全屏:"+(plus.navigator.isFullscreen()?"是":"否") );  
}

2接下来,您需要阻止用户通过按下“返回”按钮返回到桌面。为此,您可以重写Android应用程序的onBackPressed()方法,并在其中添加以下代码:

@Override
public void onBackPressed() {
    // Do nothing
}

这将阻止用户通过按下“返回”按钮返回到桌面。如果您还想防止用户通过多任务窗口切换到其他应用程序,请使用以下代码:

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if (!hasFocus) {
        Intent closeDialog = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
        sendBroadcast(closeDialog);
    }
}

这将在用户尝试切换到其他应用程序时关闭系统对话框,从而防止他们返回到桌面。

请注意,这种方法可能会违反Android的用户体验准则,并可能对用户造成困扰。此外,这种方法可能无法在所有设备上运行。因此,您应该在使用此方法之前仔细考虑其影响。

如果是uniapp如何设置拒绝返回呢,在页面的onBackPress生命周期使用如下代码

onBackPress() {  
   if(this.showMask) {  
     this.showMask = false;  
     return true;  
   }else{  
      uni.showModal({  
        title: '提示',  
        content: '是否退出uni-app?',  
        success: function(res) {  
            if (res.confirm) {  
                // 退出当前应用,改方法只在App中生效  
                plus.runtime.quit();  
            } else if (res.cancel) {  
                console.log('用户点击取消');  
            }  
        }  
      });  
      return true  
   }  
},

文档信息

版权声明:可自由转载(请注明转载出处)-非商用-非衍生

发表时间:2023年3月21日 11:56