logo

上一次自己打包app,遇到了侧滑直接退出程序,并没有返回上一页,当时我也没有在意,没想着解决。但是最近公司需求,需要打包一个手机app,不可能侧滑就直接退出,应该是侧滑返回上一页。当在首页的时候,侧滑一次,提醒你再滑一次退出程序。

直接上代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<script>
document.addEventListener('plusready', () => {
//等待plus ready后再调用5+ API:
let first = null;
const webview = plus.webview.currentWebview();
plus.key.addEventListener('backbutton', () => {
webview.canBack((e) => {
if (e.canBack) {
webview.back();
} else {
//首次按键,提示‘再按一次退出应用’
if (!first) {
//获取第一次点击的时间戳
first = new Date().getTime();
//通过H5+ API 调用Android 上的toast 提示框
plus.nativeUI.toast("再按一次退出应用", {
duration: 'short'
});
setTimeout(() => {
first = null;
}, 1000);
} else {
if (new Date().getTime() - first < 1000) {
//获取第二次点击的时间戳, 两次之差 小于 1000ms 说明1s点击了两次,
plus.runtime.quit(); //退出应用
// webview.close(); //hide,quit
}
}
}
})
});
});
</script>

使用方法

对于vue项目来说,只需要将其放在public->index.html的body标签下面。