AI智能推荐题库-试题通 AI智能整理导入题库-试题通
×
首页 题库中心 2025年HarmonyOS应用开发者基础认证题库 题目详情
CB1C4E87ED800001614117901380121E
2025年HarmonyOS应用开发者基础认证题库
526
判断题

【判断题】在编译 HAP 和 HSP 时,会把它们所依赖的 HAR 直接编译到 HAP 和 HSP 中

A
正确
B
错误

答案解析

正确答案:B

解析:

题目解析: 题干:在编译 HAP 和 HSP 时,会把它们所依赖的 HAR 直接编译到 HAP 和 HSP 中。 正确答案:B(错误) 解析理由: HAP(Harmony Ability Package)和 HSP(Harmony Shared Package)是 HarmonyOS 中的应用模块打包格式。HAR(Harmony Archive)是一种静态共享包,用于在多个模块之间共享代码和资源。 关键知识点在于三者的构建与依赖处理机制: - HAR 类似于传统的静态库,其代码和资源在编译时会被**直接嵌入**到引用它的模块中。 - 然而,从 HarmonyOS 的模块化设计演进来看,自 API 9 起,推荐使用 HSP 来替代 HAR 实现共享模块,因为 HSP 支持动态共享,能够在运行时被多个模块共享,从而减少应用包体积并提升内存利用率。 - 更重要的是,在编译 HAP 或 HSP 时,如果它依赖的是 HAR,则该 HAR 的内容确实会被**编译并打包进**引用方模块中,即发生“代码复制”。但题干表述为“会把它们所依赖的 HAR 直接编译到 HAP 和 HSP 中”,这一说法看似正确,需进一步辨析。 然而,问题的关键在于“直接编译”这一表述是否准确。实际上,HAR 是作为依赖项被**打包集成**,而不是在编译过程中将源码重新参与编译流程。更准确地说,HAR 在构建时已经是一个编译好的产物,引用它的 HAP/HSP 在构建过程中会将其内容合并进去,属于打包阶段的行为,而非“编译”阶段。 此外,当前 HarmonyOS 官方架构建议避免将 HAR 打包进 HSP,且对 HAP 引用 HAR 的场景也有优化策略,例如通过模块拆分来减少冗余。 更重要的是,最新开发规范中强调:HSP 不应依赖 HAR,而应使用更先进的共享机制。因此,将 HAR “直接编译进 HSP”不仅技术上存在限制,而且不符合最佳实践。 综上所述,题干表述过于绝对且未考虑实际构建机制与架构规范,因此判断为错误。 核心知识点总结: 1. HAR 是静态共享包,其代码和资源在构建时会被嵌入引用它的模块中,导致代码冗余。 2. HAP 是应用的功能模块包,可包含代码、资源、配置文件等。 3. HSP 是共享包,支持动态共享,多个模块可在运行时共享同一份代码和资源。 4. 编译与打包的区别:HAR 的集成主要发生在打包阶段,而非源码编译阶段。 5. HarmonyOS 推荐使用 HSP 替代 HAR 实现共享,以实现更好的模块化和性能优化。 因此,正确答案为 B:错误。

相关知识点:

编译HAP和HSP不包含HAR

题目纠错
2025年HarmonyOS应用开发者基础认证题库

扫码进入小程序
随时随地练习

关闭登录弹窗
专为自学备考人员打造
勾选图标
自助导入本地题库
勾选图标
多种刷题考试模式
勾选图标
本地离线答题搜题
勾选图标
扫码考试方便快捷
勾选图标
海量试题每日更新
波浪装饰图
欢迎登录试题通
可以使用以下方式扫码登陆
APP图标
使用APP登录
微信图标
使用微信登录
试题通小程序二维码
联系电话:
400-660-3606
试题通企业微信二维码