鸿蒙 next 实现虚拟返回键杀死进程关闭app

前言导读:

各位同学大家好好,最近更新文章频率不是很高啊 今天给大家带来 鸿蒙 next 实现虚拟返回键杀死进程关闭app 我们先看效果图:

作者:徐庆

团队:坚果派 公众号:"大前端之旅" 润开鸿生态技术专家,华为HDE,CSDN博客专家,CSDN超级个体,CSDN特邀嘉宾,InfoQ签约作者,OpenHarmony布道师,电子发烧友专家博客,51CTO博客专家,擅长HarmonyOS/OpenHarmony应用开发、熟悉服务卡片开发。欢迎合作。

效果图

看到效果 我们可以类比安卓的返回键的一个情况 我们需要重写返回键的回调方法。所以我们在鸿蒙next中实现此类效果也要在我们生命周期方法里面去实现

生命整体流程

home键去到后台

点击返回键退出应用

点击多任务键杀死进程

如果不清楚的也可以可以去查看我们之前的文章 生命周期 今天我们就主要讲一下今天的案例需要 监听我们的 onBackPress() 方法

首先我们先定义一个 变量backTime 默认是0

ini 复制代码
private  backTime:number=0;

onBackPress()方法体实现

kotlin 复制代码
onBackPress(): boolean | void {
 let nowtime= Date.now();
 if(nowtime-this.backTime<1000){
   const mContext = getContext(this) as common.UIAbilityContext
   mContext.terminateSelf();
 }else {
   this.backTime=nowtime;
   this.showToast("再按一次将退出当前应用")
 }
return true;
}

我们使用当前时间 nowtime 减去我们的backTime 如果小于1000毫秒 我们就杀死app 通过调用不过 mContext.terminateSelf() 关闭app 如果是时间差不超过1秒 就证明只点击返回一次 我们就将 this.backTime=nowtime 重新赋值 如果再次点击时间差超过 1秒 然后提示再次点击就可以退出app 要是小于1秒 就关闭app

最后总结:

整个案例比较简单,我们也是要先熟悉我们的生命周期整个流程然后配合点击时间和当前时间的时间差来实现 返回键杀死app 然后加上了提示 也不会让用户误操作直接退出app了。有兴趣的同学可以拷贝代码自己尝试一下。 最后呢 希望我都文章能帮助到各位同学工作和学习 如果你觉得文章还不错麻烦给我三连 关注点赞和转发 谢谢

相关推荐
世人万千丶5 小时前
Flutter 框架跨平台鸿蒙开发 - 鸿蒙版本五子棋游戏应用
学习·flutter·游戏·华为·harmonyos·鸿蒙
梁山好汉(Ls_man)5 小时前
鸿蒙_ArkTS解决Duplicate function implementation错误
开发语言·华为·typescript·harmonyos·鸿蒙
autumn20056 小时前
Flutter 框架跨平台鸿蒙开发 - 连连看游戏应用
flutter·华为·harmonyos
浮芷.7 小时前
Flutter 框架跨平台鸿蒙开发 - flutter版本样式的美食菜谱应用
flutter·harmonyos·美食
Swift社区7 小时前
鸿蒙游戏开发踩坑实录
华为·harmonyos
小雨天気.8 小时前
Flutter 框架跨平台鸿蒙开发 - 生活中的书法练习应用开发文档
flutter·生活·harmonyos
AI_零食9 小时前
Flutter 框架跨平台鸿蒙开发 - 鸿蒙麻将游戏应用
学习·flutter·游戏·华为·交互·harmonyos
互联网散修9 小时前
鸿蒙原生实战:智感握姿 – 左右手自动适配新闻列表
华为·harmonyos·手持握姿检测
独特的螺狮粉10 小时前
Flutter 框架跨平台鸿蒙开发 - 睡眠白噪音开发纪录
flutter·华为·harmonyos·鸿蒙
提子拌饭13310 小时前
Flutter 框架跨平台鸿蒙开发 - 商用项目看板应用
flutter·华为·harmonyos