首页 > 汽车新闻 > 汽车新闻 > 鸿蒙开发实战 - 对鸿蒙开发程序包 HAP、HAR 以及 HSP 的简要理解

鸿蒙开发实战 - 对鸿蒙开发程序包 HAP、HAR 以及 HSP 的简要理解

发布时间:2024-07-26 22:46:36来源: 15210273549

备注:在看文档的时候,一定要注意是 HarmonyOS 还是 OpenHarmony。因为两者使用的 SDK 是不同的。


这里不对此展开详细的说明,只对 HAR 和 HSP 说下自己的理解,相比较于 HAP,他们都不能单独运行到设备上。他们两个的区别主要有两方面,一个是 HAR 不支持声明 Pages 页面,另一个是 HSP 的发布需要确保版本号和宿主程序保持一致。

在日常使用场景中,我们要依据实际业务来创建使用 HAR 还是 HSP,对于单 HAP 来说,两者在选择上其实都可以,但对于多 HAP 的业务,因为在打包时,HAR 会被编译打包到所有依赖该文件的 HAP 和 HSP 包当中,这就需要平衡两者之间的选择。


针对第一个区别,我们不能够通过 pushUrl 的方式进行页面跳转,但鸿蒙还提供了另外的方式,通过路由命名跳转到指定页面。比如下面我们命名当前页面路由为 myPage


那么我们就可以通过下面的方式进行跳转:

router.pushNamedRoute({ name: 'myPage' })
如果在跳转的时候把当前组件卸载,我们可以用

router.replaceNamedRoute({ name: 'myPage' })
在跳转的同时我们可以进行数据传递:

router.pushNamedRoute({
  name: 'myPage',
  params: {
    data1: 'message',
    data2: {
      data3: [123, 456, 789]
    }
  }
})
在 myPage 页面进行数据获取:

router.getParams();
上面所说这些,主要是针对公司内部自有业务开发场景来说的,如果你现在封装了一个功能,希望提供给所有可能使用到该三方库的开发者,应该选择哪种方式呢?上面所说的第二点区别其实已经给出了答案,最优解是选择 HAR 包,同时 HAR 包可以发布到 OHPM 私仓或者中心仓供其他应用使用,在发布到中心仓时最好开启代码混淆,以此来保证代码安全。

在 HAR 模块的 build-profile.json5 文件中的 ruleOptions 字段下的 enable 进行设置,配置如下所示:

"buildOptionSet": [
    {
      "name": "release",
      "arkOptions": {
        "obfuscation": {
          "ruleOptions": {
            "enable": true,
            "files": [
              "./obfuscation-rules.txt"
            ]
          },
          "consumerFiles": [
            "./consumer-rules.txt"
          ]
        }
      },
    },
  ]
这样在构建 HAR 的时候,就会对代码进行编译、混淆及压缩处理。

以上就是对鸿蒙程序包区别和使用场景的一个简要概述,因为本身也是在学习过程,避免不了存在一些理解上的出入,还望给与指正,一起交流学习,感谢。

 

汽车新闻更多>>

2024美国车市回暖,本田逆袭Stellantis跻身前五,混动能否再超电动车? 新能源车企2025:盈利之年,谁能率先突围? 充电桩车位长时间占用AI识别系统 电动汽车充电站燃油车占用监测 入门电动车性价比真相:这两款低配真的值得入手吗? 法拉利首款纯电动车型F222有望今年投产 ,预计售价约367万人民币 新能源车2025:盈利与交付双重考验,谁将脱颖而出? 锂矿储量跃升全球第二,新能源车降价五成却没那么简单! 春运高速充电不再难,新能源车主可安心回家过年! 大屏、大空间、大角度后轮转向,领克900将是今年旗舰SUV新标杆? “暖男”相伴,冬天也能轻松露营,深蓝S05了解一下! 东风柳汽2025年合作伙伴大会:全新重卡平台乘龙H7 Pro亮相! 比亚迪智驾看强汉 媒体齐聚2025款汉高快+城区智驾抢先体验营 “油电同智”战略显成效,上汽大众大众品牌年销超114万辆 远程新能源商用车成为第9届亚冬会官方合作伙伴 可醇可电可油! 吉利今年内将推两款全新“超醇电混”产品 吉利控股全面践行《台州宣言》 引领绿色智能通行生态 MX-5最强性能道路版来了,马自达不再保留 领克09产品矩阵单一,搭载2.0T+48V轻混,配置没有明显短板 探店全新宝马5系,颜值高,内饰档次感足,智能化水准提升,真香 体验福特锐际:优惠达4万,全系2.0T+8AT可选四驱,值得购买吗? 比亚迪海豹荣获2024-2025日本年度风云车“十大最佳车型”奖 奥迪式前脸,比亚迪汉同款尾灯!奇瑞风云A8L改款换面大升级 长4米77,配1.4T和10.1英寸大屏!捷达VA7叫板轩逸朗逸能赢吗? 小米YU7最新谍照曝光:前轮后方增设进气口,长后悬设计独树一帜 亦庄牵头申报!京津冀智能网联新能源汽车集群晋级“国家队” 全新亚洲龙逆势热销一涨再涨:成功没有巧合 价值至上是根本 关润再掌棋局:鸿海“抢亲”日产,能否续写汽车业传奇? 赛力斯创始人张兴海做客央视直播间,畅谈问界“新豪华”发展之道 消息称特斯拉正与美国得州进行初步谈判,以实现 Robotaxi 落地 Cybertruck确定入华,1月1日开售,特斯拉:中国官网已上架