解決Hbuilder打包的apk文件按手機返回鍵直接退出軟件


問題描述:Hbuilder打包的app如果點擊手機返回鍵,app會直接退出,返回不了上一頁。

寫在公共js文件中,每個頁面均引入該js,代碼如下:

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按手機返回鍵直接退出APP //plus.runtime.quit(); } }) }); });
上面的一段代碼即可實現按手機返回鍵時返回上一頁,當返回到首頁,再按手機返回鍵即可退出APP,下面的代碼可以不要




點擊手機返回鍵兩次提示退出程序,代碼如下:

注: 在hbuilder中新建移動App時,選擇模板-mui項目,在頁面中引入mui.js以及mui.min.js,點擊兩次退出程序效果才會實現
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); });



按手機返回鍵返回上一頁 + 點擊手機返回鍵兩次提示退出程序效果,完整js代碼:

注:此段代碼當在首頁,按手機返回鍵時無效果,不會退出APP,要點擊兩次才行

<script> 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.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 < 1500) { plus.runtime.quit(); } } }, false); }); } }) }); }); </script>
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM