最近的項目是使用Vue全家桶+HBuilder打包開發一個移動端APP。
在測試的時候發現,當安卓手機使用虛擬按鈕的時候,點擊虛擬按鈕的返回鍵,APP會直接退出。
這是因為安卓手機自帶back虛擬按鍵,如果不修改其默認事件,點一下app就退出了,
所以需要修改這個按鍵默認事件事件的代碼。
在index.html中加入一個script,加上如下代碼:
<script>
document.addEventListener('plusready', function () {
var first = null;
var webview = plus.webview.currentWebview();
plus.key.addEventListener('backbutton', function () {
webview.canBack(function (e) {
if (e.canBack) {
webview.back(); //這里不建議修改自己跳轉的路徑
} else {
//首次按鍵,提示‘再按一次退出應用’
if (!first) {
first = new Date().getTime(); //獲取第一次點擊的時間戳
plus.nativeUI.toast("再按一次退出應用", {
duration: 'short'
}); //通過H5+ API 調用Android 上的toast 提示框
setTimeout(function () {
first = null;
}, 1000);
} else {
// 獲取第二次點擊的時間戳, 兩次之差 小於 1000ms 說明1s點擊了兩次,
if (new Date().getTime() - first < 1000) {
plus.runtime.quit(); //退出應用
}
}
}
})
});
});
</script>
