HarmonyOS鸿蒙Next中如何统计HAR包给App带来的实际包体积的增量

HarmonyOS鸿蒙Next中如何统计HAR包给App带来的实际包体积的增量 现在官方提供的包大小扫描工具只能针对HAP、HSP、App包内容进行扫描,那HAR包的大小和App集成HAR后,HAR给App包大小带来的实际增量该如何计算?

在我自己实践过程中集成HAR并且使用扫描工具扫描后总结如下结论:

  1. App集成HAR但不使用情况下,HAR不会增加App包大小;
  2. App集成HAR,并且只使用其中一部分功能,HAR会使App包大小增加一部分;
  3. App集成HAR,并且使用HAR所有功能,HAR会使App包大小增加全部大小。

并且集成HAR后,App编译打包会把HAR编译打包进HAP、HSP中,扫描工具无法准确获取到HAP、HSP中HAR带来的增量,所以咨询下如何获取HAR包给集成App带来的实际增量?


更多关于HarmonyOS鸿蒙Next中如何统计HAR包给App带来的实际包体积的增量的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

系统设计如此。在打包时,对于依赖的har包,底层系统会按需打包,将已使用的har包的源码打包进APP包中,未使用的部分会被裁剪掉。故引入依赖har包时,对使用方APP的大小的影响,无法提供具体的包体积增量大小。此外,使用方APP可以选择对打包产物进行压缩,更加难以明确har包对app包体积大小的影响。

更多关于HarmonyOS鸿蒙Next中如何统计HAR包给App带来的实际包体积的增量的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


打包的时候,可以按照是否打进去这个har来对比整个app包的大小

在HarmonyOS鸿蒙Next中,统计HAR(HarmonyOS Ability Resources)包给App带来的实际包体积增量,可以通过以下步骤进行:

  1. 获取原始APK包体积:首先,构建一个不包含HAR包的APK,记录其体积大小。

  2. 构建包含HAR包的APK:在项目中引入HAR包后,重新构建APK,记录新的体积大小。

  3. 计算增量:通过比较两个APK的体积大小,计算出HAR包带来的实际包体积增量。

具体操作如下:

  • 步骤1:在项目中移除或注释掉对HAR包的引用,构建APK,使用adb shell dumpsys package <package_name>命令获取APK的体积信息。

  • 步骤2:在项目中重新引入HAR包,构建APK,再次使用adb shell dumpsys package <package_name>命令获取新的APK体积信息。

  • 步骤3:将两次获取的APK体积信息进行对比,差值即为HAR包带来的实际包体积增量。

例如,原始APK体积为10MB,引入HAR包后APK体积为12MB,则HAR包带来的增量约为2MB。

通过以上方法,可以精确统计HAR包对App包体积的实际影响。

在HarmonyOS鸿蒙Next中,统计HAR包给App带来的实际包体积增量,可以通过以下步骤实现:

  1. 构建App:首先,构建不包含HAR包的App,记录其体积。
  2. 引入HAR包:将所需的HAR包引入到App项目中。
  3. 再次构建App:构建包含HAR包的App,记录其体积。
  4. 计算增量:用包含HAR包的App体积减去未包含HAR包的App体积,即为HAR包带来的实际包体积增量。

通过这种方式,可以准确评估HAR包对App体积的影响。

回到顶部