解决Hbuilder打包的app返回键直接退出

解决Hbuilder打包的app返回键直接退出问题描述 Hbuilder 打包的 app 如果点击手机返回键 app 会直接退出 返回不了上一页 处理子页面点击返回键直接退出 无法返回 代码如下 这个不是写在首页 写在子页面 子页面才能返回 写在首页点击返回就是退出 不用引入 mui js 都是 h5 方法 document addEventList plusready function varweb

问题描述:Hbuilder打包的app如果点击手机返回键,app会直接退出,返回不了上一页。

处理子页面点击

返回键直接退出,无法返回,代码如下:

//这个不是写在首页,写在子页面(子页面才能返回,写在首页点击返回就是退出) //不用引入mui.js,都是h5方法 document.addEventListener('plusready', function() { var webview = plus.webview.currentWebview(); plus.key.addEventListener('backbutton', function() { webview.canBack(function(e) { if(e.canBack) { webview.back(); } else { webview.close(); //hide,quit //plus.runtime.quit(); } }) }); }); 

首页点击两次退出程序,代码如下:

//这个写在首页,判断连击两次退出。 //需要引入mui.js版本,我当时测试的时候引入了,如果不想引入把带mui的都删了就可以(或者看下面那个) mui.plusReady(function() { //首页返回键处理 //处理逻辑:1秒内,连续两次按返回键,则退出应用; var first = null; plus.key.addEventListener('backbutton', function() { //首次按键,提示‘再按一次退出应用’ if (!first) { first = new Date().getTime(); mui.toast('再按一次退出应用'); setTimeout(function() { first = null; }, 1000); } else { if (new Date().getTime() - first < 1000) { plus.runtime.quit(); } } }, false); }); //不需要mui.js版本 document.addEventListener('plusready', function(a) { var first = null; plus.key.addEventListener('backbutton', function() { //首次按键,提示‘再按一次退出应用’ if (!first) { first = new Date().getTime(); console.log('再按一次退出应用');//用自定义toast提示最好 setTimeout(function() { first = null; }, 1000); } else { if (new Date().getTime() - first < 1000) { plus.runtime.quit(); } } }, false); }); 

完整js代码:

//完整版就是,所有页面都引入这一段代码,而上面子页面和首页需要分别引入对应代码 //需要mui.js版本  

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/215103.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午2:41
下一篇 2026年3月18日 下午2:42


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号