HarmonyOS APP工程结构
在进行HarmonyOS应用开发前,您应该掌握HarmonyOS应用的逻辑结构。
HarmonyOS应用发布形态为APP Pack(Application Package,简称APP),它是由一个或多个HAP(HarmonyOS Ability Package)包以及描述APP Pack属性的pack.info文件组成。
一个HAP在工程目录中对应一个Module,它是由代码、资源、第三方库及应用配置文件组成,可以分为Entry和Feature两种类型。
-
Entry:应用的主模块。一个APP中,对于同一设备类型必须有且只有一个entry类型的HAP,可独立安装运行。(类似安卓项目中主Module)
-
Feature:应用的动态特性模块。一个APP可以包含一个或多个feature类型的HAP,也可以不含。(类似安卓项目中的库,Module)
HAP是Ability的部署包,HarmonyOS应用代码围绕Ability组件展开,它是由一个或多个Ability组成。Ability分为两种类型:FA(Feature Ability,中文名称:元程序)和PA(Particle Ability,中文名称:元服务)。FA/PA是应用的基本组成单元,能够实现特定的业务功能。FA有UI界面,而PA无UI界面。(注:可以参考安卓,理解FA为activity,PA为服务 广播 内容提供者)
编译构建
编译构建是将HarmonyOS应用的源代码、资源、第三方库等打包生成HAP或者APP的过程。其中,HAP可以直接运行在真机设备或者模拟器中;APP则是用于应用上架到华为应用市场。
为了确保HarmonyOS应用的完整性,HarmonyOS通过数字证书和授权文件来对应用进行管控,只有签名过的HAP才允许安装到设备上运行(如果不带签名信息,仅可以运行在模拟器中);同时,上架到华为应用市场的APP也必须通过签名才允许上架。因此,为了保证应用能够发布和安装到设备上, 需要提前申请相应的证书与Profile文件,注意:
申请证书和Profile文件时,用于调试和上架的证书与授权文件不能交叉使用:
- 应用调试证书与应用调试Profile文件、应用发布证书与应用发布Profile文件具有匹配关系,必须成对使用,不可交叉使用。
- 应用调试证书与应用调试Profile文件必须应用于调试场景,用于发布场景将导致应用发布审核不通过;应用发布证书与应用发布Profile文件必须应用于发布场景,用于调试场景将导致应用无法安装。
应用签名
调试应用签名的方式包括如下两种:
- 方式一:通过DevEco Studio自动化签名的方式对应用进行签名;
- 方式二:通过从AppGallery Connect中申请调试证书和Profile文件后,再进行签名。
通过DevEco Studio自动化签名的方式更加简单和高效,因此推荐使用自动化签名
- 连接真机设备,确保DevEco Studio与真机设备已连接。
- 进入File > Project Structure > Project > Signing Configs界面,点击“Sign In”按钮进行登录。
- 在AppGallery Connect中创建项目和应用。
- 登录AppGallery Connect,创建一个项目。
- 在项目中,点击添加应用