# 点分版本号变更后API兼容性判断方式说明

**问题描述**

7.0版本支持点分版本号，使用点分版本号时，API兼容性判断方式与之前有差异，如新增的API兼容性判断方式、@Available注解等差异。

**解决措施**

*   新增的API兼容性判断方式
    1.  ArkTS语言新增的API兼容性判断方式。
        
        apiAvailable()接口使用方式。
        
        ```
        getTestData(): void {
          if (deviceInfo.sdkApiVersion >= 24 && deviceInfo.apiAvailable('26.0.0')) {
            // Calling APIs of 26.0.0
          } else {
            // Downgrade Scheme
          }
        }
        ```
        
    2.  C/C++语言新增的API兼容性判断方式。
        
        APIAVAILABLE()接口使用方式。
        
        ```
        void testFunction(){
            if(APIAVAILABLE(24, 0, 0)){
                // method invocation
            }
        }
        ```
        

*   通过@Available注解进行API兼容性判断的差异
    
    在点分版本号变更后，可支持使用三位数字的版本号参数。（仅支持ArkTS，从API 22版本开始支持。）
    
    ```
    // HarmonyOS
    @Available({ minApiVersion: 'HarmonyOS 7.0.0' })
    function  func2(){}
    ```
    
    ```
    // OpenHarmony
    @Available({ minApiVersion: '26' })
    function  func1(){
      func2()
    }
    ```