A
Air官方
Stage 模型是鸿蒙应用的结构规范:应用怎么组织、生命周期怎么走。这篇给开发者的入门导读。
▍基本概念
应用(包与身份的单位)——模块(能力的分包:入口模块、功能模块)——页面路由(界面栈)——能力单元(特定场景的扩展形态:卡片、服务等)。Stage 模型把应用的结构与生命周期标准化——系统按这套模型调度你的应用。
▍生命周期的主线
应用级:创建(初始化的时机——重活别在这卡)、前后台(可见性变化的响应——后台降载、前台恢复)、销毁(清理收尾)。页面级:入栈出栈(页面切换的资源管理)、可见性(页面被盖住时的暂停)。扩展形态各有自己的生命周期(卡片刷新、服务启停——各按各的规矩)。
▍工程要点
初始化的分寸(应用创建回调里做最轻的初始化——重初始化放后台或延迟;移植工程的铁律:这个阶段绝不能阻塞——看门狗盯着);前后台的资源调度(后台停动画停刷新、状态落盘;前台恢复——状态恢复的完整性与速度);页面栈的纪律(页面路径清晰——深栈的返回体验、页面销毁时的资源释放);多入口(不同的启动形态进不同页面——分享、打开方式的入口路由)。
▍移植应用的特殊性
移植工程的生命周期要两层对齐(ArkTS 层收到前后台事件,要转发给 native 世界——框架的暂停恢复、渲染的启停跟着走);启动参数的处理(打开文件进应用——文件入口路由到 native 的打开逻辑);被系统回收的恢复(低内存被杀后的重启恢复——状态快照的落盘时机)。
▍常见坑
初始化里干重活(启动卡死看门狗——首启优化的第一大敌);前后台没转发 native(后台继续满帧跑——功耗差评);页面栈泄漏(页面销毁没释放——越用越重)。
▍一句话
生命周期是系统与应用的契约:系统给你回调,你在回调里做对的事——轻初始化、真降载、快恢复。
有疑问欢迎在本板块直接发帖,我们会逐条回复。
▍基本概念
应用(包与身份的单位)——模块(能力的分包:入口模块、功能模块)——页面路由(界面栈)——能力单元(特定场景的扩展形态:卡片、服务等)。Stage 模型把应用的结构与生命周期标准化——系统按这套模型调度你的应用。
▍生命周期的主线
应用级:创建(初始化的时机——重活别在这卡)、前后台(可见性变化的响应——后台降载、前台恢复)、销毁(清理收尾)。页面级:入栈出栈(页面切换的资源管理)、可见性(页面被盖住时的暂停)。扩展形态各有自己的生命周期(卡片刷新、服务启停——各按各的规矩)。
▍工程要点
初始化的分寸(应用创建回调里做最轻的初始化——重初始化放后台或延迟;移植工程的铁律:这个阶段绝不能阻塞——看门狗盯着);前后台的资源调度(后台停动画停刷新、状态落盘;前台恢复——状态恢复的完整性与速度);页面栈的纪律(页面路径清晰——深栈的返回体验、页面销毁时的资源释放);多入口(不同的启动形态进不同页面——分享、打开方式的入口路由)。
▍移植应用的特殊性
移植工程的生命周期要两层对齐(ArkTS 层收到前后台事件,要转发给 native 世界——框架的暂停恢复、渲染的启停跟着走);启动参数的处理(打开文件进应用——文件入口路由到 native 的打开逻辑);被系统回收的恢复(低内存被杀后的重启恢复——状态快照的落盘时机)。
▍常见坑
初始化里干重活(启动卡死看门狗——首启优化的第一大敌);前后台没转发 native(后台继续满帧跑——功耗差评);页面栈泄漏(页面销毁没释放——越用越重)。
▍一句话
生命周期是系统与应用的契约:系统给你回调,你在回调里做对的事——轻初始化、真降载、快恢复。
有疑问欢迎在本板块直接发帖,我们会逐条回复。
楼主
7 天前