鸿蒙 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了。有兴趣的同学可以拷贝代码自己尝试一下。 最后呢 希望我都文章能帮助到各位同学工作和学习 如果你觉得文章还不错麻烦给我三连 关注点赞和转发 谢谢

相关推荐
陈无左耳、6 小时前
HarmonyOS学习第2天: 解锁语言与框架的无限可能
学习·华为·harmonyos
HMS Core6 小时前
【FAQ】HarmonyOS SDK 闭源开放能力 —Live View Kit (1)
华为·harmonyos
Huang兄6 小时前
鸿蒙-如何发布一个三方库
华为·harmonyos
敢嗣先锋6 小时前
鸿蒙5.0实战案例:基于自定义注解和代码生成实现路由框架
移动开发·harmonyos·arkui·组件化·鸿蒙开发·路由框架
Huang兄6 小时前
鸿蒙-canvas-画时钟
harmonyos
二川bro6 小时前
HarmonyOS 开发套件 介绍 ——上篇
华为·harmonyos
__Benco7 小时前
OpenHarmony分布式数据管理子系统
harmonyos
jikuaidi6yuan7 小时前
Apache Spark 的主要特点
harmonyos
野有蔓草W10 小时前
鸿蒙开发环境搭建-入门篇
华为·harmonyos