Harmony学习笔记一——项目创建及配置

文章基于Harmony Next Preview2 进行学习,其他版本可能会稍有不同

准备工作

由于目前Harmony Next仅有Preview版本,想要进行Harmony Next开发需要向华为申请权限,具体操作参考: https://developer.huawei.com/consumer/cn/forum/topic/0208140368442297004?fid=0101587866109860105

权限通过后就可以下载DevEco Studio NEXT Developer Preview的鸿蒙编译器

项目创建

  1. 打开IDE, 点击Create Project

  2. 选择模版,做常规应用开发选择第一个Empty Ability 就可以了,然后点击Next

  3. 配置项目信息

    在这里可以设置项目名称(Project name)、包名(Bundle name)、保存位置(Save location)、模块名称(Module name)等

    要注意的是

    • 由于是基于Next开发,因此Compile SDK和Compatible SDK要在4.1.0(11)及以上
    • Device type 是配置运行应用的设备类型,可以根据应用需求进行选择,其中2in1是指平板电脑二合一的设备

    配置好之后点击Finish,到此完成了项目的创建。

目录解析

第一级目录
  • AppScope

    应用级别的相关配置及资源。

  • build-profile.json5

    1. app标签

      应用的打包配置,包含签名、sdk版本等,和Android工程中app目录下gradle文件的android标签作用一致

    2. modules标签

      配置项目中包含哪些modules,与Android工程中setting.gradle的作用一致

  • entry

    一个module目录,目录名是创建项目时指定的名字,代码就是在这个目录中写的

  • hvigor

    Harmony就是使用hvigor构建的,作用和android中的gradle文件夹一致

  • hvigorfile.ts

    项目级别的打包脚本,里面可以配置自定义插件

  • local.properties

    本地路径配置,默认里面只有hwsdk.dir(Harmony的SDK目录)

  • oh-package.json5

    配置所需要的依赖库

  • oh-package-lock.json5

    根据oh-package.json5自动生成,里面的依赖库会绑定具体版本

  • oh_modules

    在这里会关联到依赖库的具体目录,可以通过这里查看依赖库的代码

AppScope
  • resources

    存储资源,这里的资源可以被项目中所有的module引用

  • app.json5

    应用的配置信息,包含:包名、版本名、版本号、图标、应用名等

entry
  • src/main/ets

    这是源码目录,是我们编写Harmony代码的地方, 同Android中的src/main/java

  • src/main/resources

    资源目录,可以添加颜色、字符串、图片等资源,同Android中的src/main/res

    • base/element

      配置字符串、颜色等常量

    • base/media

      配置图片等多媒体资源

    • base/profile/main_pages.json

      配置该module中有哪些页面(Page),非常重要的文件,类似于在manifest.xml中配置与Activity

  • src/main/module.json5

    该module的配置文件

  • build-profile.json5

    module构建的配置文件

  • hvigorfile.ts

    module构建脚本

  • oh-package.json5

    配置module所需要的依赖库

  • oh-package-lock.json5

    根据oh-package.json5自动生成,里面的依赖库会绑定具体版本

项目配置

应用名和图标配置

当我们在模拟器上运行项目后发现。app的名称是label,但AppScope/app.json5明明已经配置了是HM_demo,这是怎么回事呢

Harmony应用名称(文档上称为标签)分为应用名和入口名,在AppScope/app.json5中配置的是应用名,在手机的的设置------>应用和元服务 中可以看到

而桌面上显示的叫入口名

入口名 实在entry中 src/main/module.json5设置的。同样,图标也分为应用图标和入口图标,设置方式与应用名称一样。

启动页配置

在我们启动应用时候会先看到一个中间为应用默认图标(四叶草)的空白页面,即便我们将应用图标和入口图标都替换了,启动时依旧显示一个四叶草。这个设置是在entry中 src/main/module.json5中的startWindowIcon 属性。讨厌的是这个属性不能去除、不能为空,只能设置一个图片。如果不需要系统的启动图可以将startWindowIcon 设置为一个的像素颜色和startWindowBackground相同的图片。

相关推荐
夜色呦2 小时前
深入 Laravel 的错误处理与异常处理机制
android·php·laravel
JoyceMill4 小时前
Android动画:提升用户体验的关键技术
android·ux
s_nshine4 小时前
将 build.gradle 配置从 Groovy 迁移到 Kotlin
android·开发语言·kotlin·gradle·groovy·build
Jerry_正弦4 小时前
Kotlin中object关键字的作用
android·开发语言·kotlin
buyue__4 小时前
Kotlin/Android中执行HTTP请求
android·开发语言·kotlin
JoyceMill4 小时前
Android 图像切换器:实现动态图像切换的关键技术与应用
android
RelinRan4 小时前
Android 遥控器
android
H1006 小时前
Kotlin中对空的很多处理
android·开发语言·kotlin
松仔log6 小时前
Kotlin基础——异步和并发
android·开发语言·kotlin
H1007 小时前
Kotlin中的关键字
android·kotlin