今日看点

【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

相关阅读

《临江仙》热播 杨谨睿二搭曾舜晞“超级加辈”

由爱奇艺出品,欢娱影视联合出品,智磊、国浩执导,白鹿、曾舜晞、领衔主演,的恨爱反转仙侠剧《临江仙》正在爱奇艺独播。该剧自开播热度就一路飙升,剧情也在随着播出在爱恨交织的纠葛里,摒弃了 &ldquo...

2025-06-13

《淬火年代》定档06.17 热血青年攻坚制造业自主创新之路

《淬火年代》改编自阿耐小说《艰难的制造》,由正午阳光出品,明大程编剧,李雪、赵烁执导,侯鸿亮担任总制片人,赵子煜担任制片人,张新成、宋祖儿领衔主演,王彦霖、任程伟、张月、何雨虹、刘奕铁、王影璐共同主演...

2025-06-13

韩警方逮捕试图入侵田柾国住宅的30多岁中国女性

据韩媒报道表示,首尔龙山警察局以涉嫌入侵住宅未遂的嫌疑逮捕了现行犯,30多岁的中国女性A某。据悉,A某于韩国时间昨晚11时20分左右来到位于首尔龙山区的防弹少年团成员田柾国的住宅,数次按大门的密码,...

2025-06-13

ZICO支援“挚友”都暻秀,参与其正规主打曲制作

12日据独家报道,ZICO参与了将于7月7日发行的都暻秀首张正规专辑《BLISS》的主打曲《SING ALONG!》的作曲及制作。据悉,两人从很久以前就积累了深厚的友谊,他们的缘分通过此次合作延续了...

2025-06-13

金秀贤首尔豪宅遭扣押 被广告主索赔30亿韩元

据韩媒报道,金秀贤12日再度传出遭广告主申请不动产假扣押,索赔金额高达30亿韩元(约1590万元)。对此,金秀贤的法律代理人表示,“广告主方面提出损害赔偿要求,并对(金秀贤持有的)位于首...

2025-06-13

ENHYPEN时隔约两年将在日本推出全新单曲《宵 -YOI-》

13日上午,ENHYPEN通过官方SNS宣布,日本第四张单曲《宵 -YOI-》将于7月29日正式发售。同时公开的Logo预告视频中,繁星闪烁的夜空中回荡着心跳声营造出梦幻氛围,更加激发了粉丝们对新曲...

2025-06-13

【韩娱看点】Netflix将调整韩国演员高片酬 限制最高上限

一直主导韩国电视剧制作费上涨的Netflix,近日开始着手调整演员的出演酬劳。根据业界消息,Netflix最近将演员出演酬劳的上限设定为每集最多4亿韩元。虽然这仍然是不小的金额,但Netflix的方...

2025-06-13

【韩娱看点】节目上闻私密部位气味?陆星材19禁表演被骂翻,韩网直呼:太恶心!

歌手兼演员的韩国艺人陆星材最近主演的SBS惊悚奇幻古装剧《鬼宫》正在热播,这也是他首次挑战古装史剧,首集便取得9.2%的高收视率,高于前两档作品《我的完美秘书》、《宝物岛》的开播收视率,成为截至当时...

2025-06-13

践土会盟:晋文公霸业巅峰与春秋秩序的重构

践土会盟是春秋时期晋文公重耳主持的一次具有里程碑意义的诸侯盟会。公元前632年,晋国在城濮之战中击败楚国后,联合齐、宋、鲁、蔡、郑、卫、莒等国,于践土(今河南原阳西南)举行会盟。此次盟会不仅确立了晋国...

2025-06-13

薄姬:从魏豹宠妾到汉室太皇太后的传奇人生

在中国古代宫廷史上,薄姬(前223年—前155年)的命运堪称一部跌宕起伏的史诗。这位出身卑微的私生女,历经秦末乱世、楚汉相争、吕后专权,最终以汉文帝生母的身份登上权力巅峰,其人生轨迹不仅折射出汉初政治...

2025-06-13