首页 > 手机技巧 > 手机技巧 > 鸿蒙开发实战 - 对鸿蒙开发程序包 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 的时候,就会对代码进行编译、混淆及压缩处理。

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

 

手机技巧更多>>

985、211、双一流大学到底有啥区别?一篇文章让你彻底搞懂! 广汽本田11.5代雅阁实车亮相,前脸大变样,预计3月上市 凯迪拉克CT5高性能版确定引进中国,预计2月底到货 上汽通用五菱累计产销量突破3000万辆,新能源与出口表现亮眼 别克E4臻享版内部员工价曝光,优惠力度惊人,仅为8.99万元 主流车型健康、智能与隐私安全如何?中国汽研汽车指数测评结果发布 伙伴E起聊,升级新享法!看“第三辆车”如何“抵三辆车” 从全栈自研到全栈合作背后发生了什么 以创新促革新 东风本田电动化转型驶入快车道 小米收购蔚来?海通国际不能以“猜想”骚扰企业经营 15万~20万元纯电车型最优选?岚图知音何以成为电动中型SUV的“黑马” 2024年拆了39辆车,就问谁能做到? 全面体验启辰VX6:10万元出头就能享受灵活百变的“家” 三代“白毛女”齐聚前滩31,足尖传承经典 这所学校坚持8年举办新年音乐会,吸引上万人次在线观看 梅雨墨:妈妈留下的日记本 春节临近,来百联滨江迎春纳福领春联 2025年1月:林兰等:握指成拳,成就“团体冠军” 中外学生在浓浓年味中感知中国非遗文化 丰田汽车将重组日本国内生产 产销均超3100万辆,2024中国车市再创历史 汽车科技的智能化新年“狂飙” 新款Model Y突袭上市,中国车企微微一笑 看了这期工信部新车,2025年谁都别想好过 2025年阿坝州若尔盖县省内外教师业务水平达标考调中小学教师公告 2025年内江市教育和体育局部分学校、教育单位招聘教师、学科竞赛教练、教研员及工作人员公告 2025年凉山州纪委监委机关面向全州考调工作人员公告 2025年自贡市第一人民医院招聘医疗辅助岗人员公告 2025年眉山市东坡区农业农村局选聘特聘农技员公告 2025年丽江市永胜县第二人民医院招聘编制备案制人员公告