2021-04-20 05:25:38
鸿蒙应用开发101:开源Har和闭源Har
在鸿蒙应用开发雀吵中,Har包作为一种类库,类似于npm包,主要用于代码复用和分发。Har包根据其开源属性,分为开源Har和闭源Har。以下是对这两种Har包的详细解析:
一、开源Har与闭源Har的定义
二、开源Har与闭源Har的配置
在Har包的配置中,开源与闭源的设置通常与obfuscation(混淆)绑定在一起。在build-profile.json5文件中,可以通过设置不同的构建选项(如release和debug模式)来决定是否进行混淆处理,从而决定Har包的开源或闭源属性。
三、开源Har与闭源Har的构建过程
开源Har的构建过程:
开源Har在构建过程中不经过编译任务(如CompileArkTS),直接打包源码。
从构建任务中可以看出,开源Har的构建过程相对简单,没有额外的编译步骤。
闭源Har的构建过程:
闭源Har在构建过程中需要先经过编译生成ts/js文件。
编译后的ts/js文件和资源被打包成闭源Har。
从编译任务中可以看出,闭源Har的构建过程包含了编译步骤,确保了代码在打包前已经过处理。
四、开源Har与闭源Har的产物对比
以下是通过图片展示开源Har与闭源Har的产物对比:

五、开源Har与闭源Har的安全性
为了进一步提高Har包的安全性,可以考虑将Har包编译成字节码Har。字节码Har里面只有abc和生命文件,这些文件很难被破解和修改。同时,字节码Har在使用的地方也不需要重新编译,提高了应用的运行效率。
综上所述,开源Har和闭源Har在鸿蒙应用开发中各有其特点和应用场景。开发者可以根据实际需求选择合适的Har包类型进行开发和分发。同时,为了保障代码的安全性,建议在使用闭源Har的基础上,进一步考虑将Har包编译成字节码Har。