资讯动态

鸿蒙应用api的兼容性:参数配置(二)

发布时间:2026/8/15 7:21:27 来源:尧图企业网站定制
一、SDK版本三个SDK版本属性SDK版本属性配置文件打包后字段说明编译应用的SDK版本compileSdkVersionbuild-profile.json5compileSdkVersion决定开发过程中可自动联想的API范围和工具链版本。默认为DevEco Studio自带的SDK版本应用运行的目标SDK版本targetSdkVersionbuild-profile.json5targetAPIVersion默认与compileSdkVersion相同。系统侧进行API版本隔离的变更以此版本为目标行为应用运行的最低SDK版本compatibleSdkVersionbuild-profile.json5minAPIVersion应用能安装的最低API版本低于此版本无法安装。不能高于targetSdkVersion三者大小关系compatibleSdkVersion ≤ targetSdkVersion ≤ compileSdkVersion如果配置不符合这个规则会有报错提示。配置示例开发中使用并适配了API版本6.0.2(22)同时希望应用能够运行到尽可能多的HarmonyOS现网设备{ products: [ { name: default, signingConfig: default, compileSdkVersion: 6.0.2(22), targetSdkVersion: 6.0.2(22), compatibleSdkVersion: 6.0.0(20), runtimeOS: HarmonyOS } ] }targetSdkVersion的作用应用在终端设备上运行时会呈现以targetSdkVersion版本为目标版本的行为。当前设备API版本为5.0.2(14)应用targetSdkVersion配置为5.0.1(13)则经过API版本隔离的变更会以5.0.1(13)版本的API行为呈现。在5.0.2(14)发生的API变更不会影响该应用在当前设备的实际表现。建议升级SDK后重新编译应用工程时充分考虑API行为变更的影响合理配置targetSdkVersion。二、运行应用的设备系统所搭载的API版本应用能否正常运行在终端设备上与终端设备系统所搭载的API版本是否匹配应用中声明的SDK版本相关。三种获取方式方式操作方式一设置界面设备设置 → 关于本机 → 查看API版本方式二hdc命令hdc shell param get const.product.os.dist.apiname方式三API接口deviceInfo中的distributionOSApiVersion/sdkApiVersion接口hdc命令# 获取API版本字符串X.Y.Z格式 hdc shell param get const.product.os.dist.apiname 5.0.5 # 获取API版本数值X*10000 Y*100 Z hdc shell param get const.product.os.dist.apiversion 50005 # 获取OpenHarmony底座的API Level hdc shell param get const.ohos.apiversion 17说明参数说明const.product.os.dist.apinameAPI版本的字符串表示X.Y.Zconst.product.os.dist.apiversionAPI版本的数值表示X*10000Y*100Zconst.ohos.apiversionOpenHarmony底座的API Level注意界面中的API版本取值是从deviceInfo的distributionOSApiName和sdkApiVersion属性组合而成。三、应用包中所记录的SDK版本信息在应用包的module.json5中会记录三个字段字段说明compileSdkVersion编译应用的SDK版本targetAPIVersion目标API版本minAPIVersion最低API版本应用市场分发规则应用市场分发时主要根据minAPIVersion进行分发范围控制用户设备的API版本低于minAPIVersion时可在推荐页展示或通过搜索查看到点击安装时会提示无法安装并给出所需系统版本要求四、API版本隔离API版本在演进过程中可能引入行为变更。系统对变更进行API版本隔离是一种对应用的保护机制。通过配置targetSdkVersion字段来告诉系统该应用运行的目标版本从而决定使用什么样的API行为。版本隔离的处理逻辑情况处理方式配置的targetSdkVersion API行为变更引入的版本完全无需关注此变更影响仍能在更高API版本系统上正常运行配置的targetSdkVersion ≥ API行为变更引入的版本需要关注此API行为变更如果需在更高API版本系统正常运行需要进行适配未进行版本隔离的情况如果API在行为变更时未进行版本隔离将影响使用该API的所有应用。这些应用都必须按照变更说明中的适配指导进行调整重新声明SDK版本要求并完成编译上架。说明从2025年1月起将对所有API行为变更是否进行版本隔离进行明确声明从API版本6.0.0(20)开始要求应用显式配置targetSdkVersion如未配置DevEco Studio会弹框提示

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价