介绍
本示例展示了在一个Stage模型中,实现standard、singleton、specified多种模式场景。
本实例参考开发指南 。 本实例需要使用aa工具 查看应用Ability 模式信息。
效果预览
使用说明
1、standard模式:
1)进入首页,点击番茄,会新建一个番茄的Ability,展示番茄的详情;
2)在番茄的详情界面,点击黄瓜,会新建一个黄瓜的Ability,展示黄瓜的详情;
3)使用aa工具查看Ability信息,此时存在以下Ability:1个番茄的Ability、1个黄瓜的Ability、1个首页的Ability;
2、singleton模式:
1)进入首页,点击冰淇凌,会新建一个冰淇凌的Ability,展示冰淇凌的详情;
2)在冰淇凌的详情界面,点击螃蟹,会复用冰淇凌的Ability,页面数据会刷新并展示螃蟹的详情;
3)使用aa工具查看Ability信息,此时存在以下Ability:1个冰淇凌的Ability、1个首页Ability;
3、specified模式:
1)进入首页,点击核桃,会新建一个核桃的Ability,展示核桃的详情;
2)在核桃的详情界面,点击蓝莓,会新建一个蓝莓的Ability,展示蓝莓的详情;
3)在蓝莓的详情界面,点击核桃,会复用已存在的核桃的Ability,实现specified模式下的单实例特性,页面数据会刷新并展示核桃的详情;
4)使用aa工具查看Ability信息,此时存在以下Ability:1个核桃的Ability、1个蓝莓的Ability、1个首页Ability;
工程目录
entry/src/main/ets/
|---Application
|---common
| |---Logger.ts // 日志工具
| |---Util.ts // 封装常用函数
|---MainAbility
|---model
| |---DataModel.ts // 封装数据类型
| |---DataUtil.ts // 封装数据处理函数
| |---MokeData.ts // 模拟数据
|---pages
| |---component
| | |---FoodListItem.ets // 食物列表组件
| |---FoodDetail.ets // 食物详情页
| |---Home.ets // 首页
具体实现
- 本示例启动standard、singleton、specified三种模式的方法主要封装在Util当中,源码参考:Util.ts 。
新建Ability:创建三个代表standard、singleton、
- specified模式的Ability,如工程目录中的SingletonAbility、SpecifiedAbility、StandardAbility,并在module.json文件中将launchType属性修改为对应的启动模式属性。
- 启动指定Ability:通过Util中的startMode函数根据页面所传的abilityName,启动对应的ability并进入详情页面。
- specified多实例功能实现:specified模式则是根据MyAbilityStage中的onAcceptWant函数给用户返回一个ability标识,如果之前启动过标识的ability,不创建新的实例并拉回栈顶,否则创建新的实例并启动。
相关权限
不涉及。
依赖
不涉及。
约束与限制
1.本示例仅支持标准系统上运行,支持设备:RK3568。
2.本示例已适配API version 9版本SDK,版本号:3.2.11.9。
3.本示例需要使用DevEco Studio 3.1 Beta2 (Build Version: 3.1.0.400 构建 2023年4月7日)及以上版本才可编译运行。
下载
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo code/BasicFeature/ApplicationModels/AbilityStartMode/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
为了能够让大家跟上互联网时代的技术迭代,在这里我特邀了几位行业大佬整理出一份最新版的鸿蒙学习提升资料,有需要的小伙伴自行领取,限时开源,先到先得~~~~
领取以下高清学习路线原图请点击→《鸿蒙 (Harmony OS)开发学习手册》纯血鸿蒙HarmonyOS基础技能学习路线图
领取以上完整高清学习路线图,请点击→《鸿蒙HarmonyOS分布式项目实战》小编自己整理的部分学习资料(包含有高清视频、开发文档、电子书籍等)
以上分享的学习路线都适合哪些人跟着学习?
-应届生/计算机专业
通过学习鸿蒙新兴技术,入行互联网,未来高起点就业。
-0基础转行
提前布局新方向,抓住风口,自我提升,获得更多就业机会。
-技术提升/进阶跳槽
发展瓶颈期,提升职场竞争力,快速掌握鸿蒙技术,享受蓝海红利。
最后
鸿蒙开发学习是一个系统化的过程,从基础知识的学习到实战技能的锤炼,再到对前沿技术的探索,每一环节都至关重要。希望这份教程资料能帮助您快速入门并在鸿蒙开发之路上步步攀升,成就一番事业。让我们一起乘风破浪,拥抱鸿蒙生态的广阔未来!
如果你觉得这篇内容对你有帮助,我想麻烦大家动动小手给我:点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
关注我,同时可以期待后续文章ing,不定期分享原创知识。
想要获取更多完整鸿蒙最新VIP学习资料,请点击→《鸿蒙基础入门学习指南》
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。