
在鸿蒙应用开发中部分具有一定规模的开发团队会提供集成态hsp给应用集成。应用hap和集成态hsp中配置的SDK版本属性字段的版本差异也存在兼容性问题。一、三个关键SDK版本属性在集成态hsp开发中同样需要关注以下属性SDK版本属性说明compileSdkVersion编译集成态hsp的SDK版本targetSdkVersion集成态hsp运行的目标SDK版本compatibleSdkVersion集成态hsp运行的最低SDK版本二、各版本属性的兼容性规则2.1 compileSdkVersion编译版本规则应用hap包和集成态hsp配置的compileSdkVersion版本可以不同。处理方式需要针对大于compatibleSdkVersion版本的接口进行API兼容性判断保护。2.2 targetSdkVersion目标版本规则应用hap包和集成态hsp配置的targetSdkVersion版本可以不同。运行时行为运行时根据各自包中配置的targetSdkVersion而确定具体的API行为。2.3 compatibleSdkVersion最低版本规则建议应用hap包配置的compatibleSdkVersion版本≥集成态hsp配置的compatibleSdkVersion版本。原因否则将该应用分发到compatibleSdkVersion版本对应的现网设备时集成态hsp将可能运行异常。三、开发建议集成态hsp开发建议说明使用最新compileSdkVersion使用最新的编译SDK版本尽可能低的compatibleSdkVersion通过API兼容性判断机制将兼容运行的最低SDK版本配置为尽可能低权衡取舍越低版本需要越多兼容性判断保护需根据现网设备API实际占比有选择地设置应用集成建议说明compatibleSdkVersion对齐确保hap的compatibleSdkVersion ≥ hsp的compatibleSdkVersionAPI兼容性判断对大于compatibleSdkVersion版本的接口进行兼容性判断保护鸿蒙应用集成集成态hsp时compileSdkVersion和targetSdkVersion允许应用hap和hsp配置不同但compatibleSdkVersion建议hap版本≥hsp版本以避免低版本设备运行异常。hsp开发侧建议使用最新compileSdkVersion并尽可能降低compatibleSdkVersion同时需根据现网设备API实际占比权衡兼容性判断的工作量。