场景:vue制作的混合app打包在安卓平板运行
初始化plus对象
created() {
document.addEventListener('plusready', this.plusReady, false)
},
methods: {
plusReady () {
var main = plus.android.runtimeMainActivity();
var windowMe = main.getWindow();
plus.android.importClass(windowMe);
var decorView = windowMe.getDecorView();
plus.android.importClass(decorView);
var View = plus.android.importClass("android.view.View");
decorView.setSystemUiVisibility(
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);
},
}
这样进入到软件中默认显示全屏,从设备底部或顶部滑动可以调出系统状态栏,就解决了每次退出平板就要使用鼠标或重启设备的问题
问题修复补充
1、当操作过系统的导航栏之后,导航栏就会一直显示,问题修复
document.addEventListener("visibilitychange", () => {
if(document.hidden) {
} else {
this.plusReady();
}
});
2、调用过输入法之后导航栏也会一直显示,问题修复
document.addEventListener("click", () => {
this.plusReady();
})
3、检测设备运行终端,在windows设备上报错:plus is not defined
if (this.isMobile()) {
console.log("安卓设备")
}else{
console.log("windows")
}
isMobile() {
let terminal = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)
return terminal;
},
版权声明:本文为qq_37332614原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。