今日看点

【HarmonyOS应用开发】Hello HarmonyOS到Hi HarmonyOS(2)

发表于话题:HarmonyOS 2
发布时间:2021-06-02

上一节我们完成了HelloHarmonyOS项目的初步创建,并运行到TV模拟器上查看了效果。本节我们将对整个项目目录结构做简要说明,以及如何跳转到Hi HarmonyOS页面(HelloHarmonyOS是基于Java的,暂不涉及XML和JS)。

HelloHarmonyOS项目目录结构

在整合目录结构中,作为初学者我们不需要关注entry(应用主模块)以外的目录。

entry是应用的主模块。一个APP中,对于同一设备类型必须有且只有一个entry类型的HAP,可独立安装运行。

HarmonyOS应用APP是什么样的?

HarmonyOS的应用软件包以APP Pack(Application Package)形式发布,它是由一个或多个HAP(HarmonyOS Ability Package)以及描述每个HAP属性的pack.info组成。我们可以在之前运行的项目entry目录结构下看到build目录,展开后可以看到hap和hapInfo.json。对于APP中多个HAP我们在后面项目进行详细介绍,本节我们仅使用entry来完成案例。

HarmonyOS应用中的Ability是什么?

刚开始学习的时候,对Ability不是特别好理解。翻译过来是能力的意思,什么算能力?为什么要使用Ability这个词?官方解释Ability是应用所具备的能力的抽象,一个应用可以包含一个或多个Ability。Ability又分为FA(Feature Ability,有UI界面)和PA(Particle Ability,无UI界面)两种类型。那到底什么是Ability呢?我的理解是一切皆能力,比如页面提供的用户交互,这就是一种能力;在比如后台推送消息任务这也是一种能力,只不过一个是可见的,一个是不可见的。

代码说明

程序是如何运行的呢?

① 先执行继承AbilityPackage类的HelloHarmonyOS 类中onInitialize()方法来加载Context。

② 然后在config.json配置清单中找到入口函数,即MainAbility类,执行onStart()方法。

③ super.setMainRoute(MainAbilitySlice.class.getName());调起UI界面。

/** * 单一方向排列布局 */ private DirectionalLayout myLayout = new DirectionalLayout(this); @Override public void onStart(Intent intent) { /** * Intent是对象之间传递信息的载体。 * 例如,当一个Ability需要启动另一个Ability时, * 或者一个AbilitySlice需要导航到另一个AbilitySlice时, * 可以通过Intent指定启动的目标同时携带相关数据。 */ super.onStart(intent); /** * 布局配置文件 * 此处设置布局宽高为MATCH_PARENT */ LayoutConfig config = new LayoutConfig(LayoutConfig.MATCH_PARENT, LayoutConfig.MATCH_PARENT); myLayout.setLayoutConfig(config); /** * 提供具有颜色渐变的Element实例,通常用于视图背景。 */ ShapeElement element = new ShapeElement(); element.setRgbColor(new RgbColor(255, 255, 255)); myLayout.setBackground(element); /** * 文本 */ Text text = new Text(this); text.setLayoutConfig(config); text.setText("Hello HarmonyOS"); text.setTextColor(new Color(0xFF000000)); text.setTextSize(50); text.setTextAlignment(TextAlignment.CENTER); myLayout.addComponent(text); /** * 设置界面入口 */ super.setUIContent(myLayout); }

我们修改text.setText("Hello World");为text.setText("Hello HarmonyOS");并运行查看效果。


在这里我们大概的说明了程序的目录结构、运行路线及修改显示文本内容。下一节我们将说说两个Ability跳转。

你是如何理解Ability的?

标签组:[应用开发

本文来源:https://www.kandian5.com/articles/23891.html

相关阅读

十二生肖的历史起源

十二生肖,又叫属相,是中国与十二地支相配以人出生年份的十二种动物,包括鼠、牛、虎、兔、龙、蛇、马、羊、猴、鸡、狗、猪。十二生肖的起源与动物崇拜有关。据湖北云梦睡虎地和甘肃天水放马滩出土的秦简可知,先秦...

2025-07-04

王羲之行书《平安帖》赏析

行书《平安帖》为东晋王羲之书写尺牍作品。今存墨迹本为唐代双钩摹搨,硬黄纸本。纵24.7厘米,4行27字。收藏于台北故宫博物院。另有绢本墨迹草书《平安帖》,为宋临摹本。纵24.5厘米,横13.8厘米,共...

2025-07-04

王羲之《远宦帖》书法赏析

《远宦帖》亦称《省别帖》,为《十七帖》丛帖第十五通尺牍。草书,6行,53字。王羲之在信中对周抚对家人的问候表示感谢,提及自己的妻子的情况时,对其病重非常担忧。信中还问及陶侃家人和一些同僚的近况。《中国...

2025-07-04

清明节的经典美食

大家知道清明时节的经典美食有哪些吗?接下来就为大家解答,一起来看看吧!青团子清明时节,江南一带有吃青团子的风俗习惯。青团子是用艾叶(也可以用其他绿色菜叶代替)捣烂后挤压出汁,接着取用这种汁同晾干后的水...

2025-07-04

七夕节的拜七姐习俗

七月七的七娘会,广东多称“拜七姐”,闽台即称为“拜七娘妈”。在新中国成立前,“七夕”是靓女们的盛大节日。旧时代靓女们向七姐“乞巧”,乞求她传授心灵手巧的手艺,其实所谓“乞巧”不过是“斗巧”。广东旧时过...

2025-07-04

王羲之《兰亭集序》整体分析

兰亭集序/兰亭序魏晋:王羲之永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭,修禊事也。群贤毕至,少长咸集。此地有崇山峻岭,茂林修竹;又有清流激湍,映带左右,引以为流觞曲水,列坐其次。虽无丝竹管弦之盛...

2025-07-04

清明节气

清明节,兼具自然与人文两大内涵,既是“二十四节气”之一,也是传统祭祖节日。“二十四节气”与“十二月建”是干支历的基本内容,它在上古(或远古)已订立。古籍载,天皇氏始制干支之名,以定岁之所在。“二十四节...

2025-07-04

《兰亭集序》文学鉴赏

《兰亭集序》文字灿烂,字字玑珠,是一篇脍炙人口的优美散文,它打破成规,自辟径蹊,不落窠臼,隽妙雅逸,不论绘景抒情,还是评史述志,都令人耳目一新。虽然前后心态矛盾,但总体看,还是积极向上的,特别是在当时...

2025-07-04

清明节相关诗词与农谚

清明节又称踏青节、行清节、三月节、祭祖节等,是中华民族传统隆重盛大的春祭节日,属于慎终追远、礼敬祖先、弘扬孝道的一种文化传统节日。清明节习俗甚多,全国各地因地域文化不同而又存在着习俗内容上或细节上的差...

2025-07-04

清明节关于习俗的日常问题

1、清明祭祀为何说“清明拜山”?此处的清明拜山指的是扫墓的意思,江南及南方诸多墓园在山上,故称为拜山。南方一些地方将扫墓称之为“扫山”或“拜山”、“拜清”,出于对祖先的礼敬,又或“去恶字而呼为美”的修...

2025-07-04