- 作者:老汪软件技巧
- 发表时间:2024-11-13 21:03
- 浏览量:
深圳x和-2024年11月11日总时长
20分钟
流程
自我介绍
HarmonyOS中的生命周期
用Entry和Navigation装饰的页面有哪些区别
HarmonyOS中里面有几种包,分别有什么作用
简单介绍一下Stage模型
HarmonyOS中的动画
如果我从A页面跳到B页面,然后再从B页面跳回A页面,并且想要携带数据,你会怎么做
ArkTS和TS的区别有哪些区别
了解过多线程吗
1. HarmonyOS中的生命周期
页面生命周期
onpageshow:页面每次显示时触发,包括路由过程、应用进入前台等场景。例如,用户从后台切换应用到前台,或者通过路由跳转到该页面时,此方法会被调用onpagehide:页面每次隐藏时触发,包括路由过程、应用进入后台等场景。比如用户按下主页键将应用切换到后台,或者通过路由跳转到其他页面时,该页面的 onpagehide 方法会被执行onbackpress:当用户点击返回按钮时触发。如果返回值为 true,表示页面自己处理返回逻辑,不进行页面路由;返回 false 则表示使用默认的路由返回逻辑,不设置返回值时按照 false 处理
组件生命周期
abouttoappear:组件即将出现时回调该接口,具体时机为在创建自定义组件的新实例后,在执行其 build () 函数之前执行。在该函数中可以修改变量,更改将在后续执行 build () 函数中生效abouttodisappear:在自定义组件析构销毁之前执行。在此函数中不允许改变状态变量,特别是 @link 变量的修改可能会导致应用程序行为不稳定
UIAbility 生命周期
create 状态:在应用加载过程中,UIAbility 实例创建完成时触发,系统会调用 oncreate () 回调。可以在该回调中进行页面初始化操作,例如变量定义、资源加载等,用于后续的 UI 展示windowstagecreate 状态:UIAbility 实例创建完成之后,在进入 foreground 之前,系统会创建一个 windowstage。windowstage 创建完成后会进入 onwindowstagecreate () 回调,可以在该回调中设置 UI 加载、设置 windowstage 的事件订阅,如获焦 / 失焦、可见 / 不可见等事件foreground 状态:当 UIAbility 实例切换至前台时触发,对应于 onforeground () 回调。在 onforeground () 中可以申请系统需要的资源,或者重新申请在 onbackground 中释放的资源.background 状态:当 UIAbility 实例切换至后台时触发,对应于 onbackground () 回调。在该回调中可以释放 UI 界面不可见时无用的资源,或者在此回调中执行较为耗时的操作,例如状态保存等.windowstagedestroy 状态:在 UIAbility 实例销毁之前,会先进入 onwindowstagedestroy 回调,可以在该回调中释放 UI 界面资源destroy 状态:在 UIAbility 实例销毁时触发,可以在 ondestroy () 回调中进行系统资源的释放、数据的保存等操作2. 用Entry和Navigation装饰的页面有哪些区别@Entry装饰的页面是应用的入口页面,通常用于展示应用的初始界面,而Navigation组件是一个导航容器,挂载在单个页面下,支持跨模块的动态路由。@Entry页面具有通用的生命周期方法,而Navigation组件里的页面不执行onPageShow、onPageHide等生命周期回调。3. HarmonyOS中里面有几种包,分别有什么作用
HarmonyOS中有三种类型的包:HAP(HarmonyOS Ability Package)、HAR(Harmony Archive)、HSP(Harmony Shared Package)。
HAP是应用安装和运行的基本单元,分为entry和feature两种类型。HAR是静态共享包,用于代码和资源的共享。HSP是动态共享包,用于应用内共享代码和资源。4. 简单介绍一下Stage模型Stage模型是HarmonyOS应用开发的基础架构,它提供了面向对象的开发方式,规范化了进程创建的方式,并提供组件化开发机制。Stage模型的组件天生具备分布式迁移和协同的能力,支持多设备形态和多窗口形态,重新定义了应用能力边界。5. HarmonyOS中的动画
HarmonyOS提供了多种动画能力,包括属性动画、显式动画、转场动画、路径动画和粒子动画。
6. 如何进行路由页面传参
在HarmonyOS中,可以通过router.pushUrl方法跳转到目标页面,并携带参数。在进入被分享页面时,通过router.getParams()来获取
传递的数据。此外,还可以使用LocalStorage等在页面间共享状态。
7. ArkTS和TS的区别有哪些区别
ArkTS是HarmonyOS优选的主力应用开发语言,它保持了TypeScript的基本风格,同时通过规范定义强化开发期静态检查和分析,提升程序执行稳定性和性能。ArkTS与TS的主要区别在于ArkTS是静态类型的,而TS支持动态类型。ArkTS在编译时进行类型检查,有助于在代码运行前发现和修复错误。
8. 了解过多线程吗
详解链接