从26.0.1版本开始,Command Line Tools集成api-compat工具,支持查询和对比从某个选定的SDK版本开始,当前工程、模块或文件中使用的API接口是否存在行为变更,帮助开发者完成兼容性检查和代码适配修改。
api-compat命令行格式为:
api-compat [options]
options:可选,命令行的配置参数,具体请参考表1。
表1 api-compat命令行配置参数
参数 | 说明 |
--help / -h | 查看api-compat命令行的帮助信息。 |
--startVersion | 必选,指定API变更扫描的起始版本,格式为:"HarmonyOS_SDK版本号_Beta/Release",如"HarmonyOS_5.0.0(12)_Release",可在菜单栏点击File > Settings > HarmonyOS SDK中查询。 |
--endVersion | 必选,指定API变更扫描的结束版本,格式为:"HarmonyOS_SDK版本号_Beta/Release",如"HarmonyOS_6.1.0(23)_Beta1",可在菜单栏点击File > Settings > HarmonyOS SDK中查询。 |
--projectPath | 可选,指定工程根目录路径,进行工程级别扫描,支持绝对路径和相对路径。 |
--modulePaths | 可选,指定模块路径,进行模块级别扫描,支持绝对路径和相对路径。 支持同时指定多个模块,模块路径使用英文逗号分隔。 |
--arkTsFiles | 可选,指定ArkTS文件路径,进行文件级别扫描,支持绝对路径和相对路径。 支持同时指定多个文件,文件路径使用英文逗号分隔。 |
--cppFiles | 可选,指定C++文件路径,进行文件级别扫描,支持绝对路径和相对路径。 支持同时指定多个文件,文件路径使用英文逗号分隔。 |
--files | 可选,指定文件(.ets、.c、.cpp文件)路径,支持绝对路径和相对路径。 支持同时指定多个文件,文件路径使用英文逗号分隔。 |
--outputPath | 可选,指定扫描结果的输出路径,默认值是用户的临时目录。 |
--format | 可选,指定扫描结果的输出格式,包括json和csv,默认值为csv。 |
api-compat -h
api-compat --startVersion "HarmonyOS_5.0.0(12)_Release" --endVersion "HarmonyOS_6.1.0(23)_Beta1" --projectPath "D://待检测项目路径" --outputPath " D://扫描结果输出路径"
api-compat --startVersion "HarmonyOS_5.0.0(12)_Release" --endVersion "HarmonyOS_6.1.0(23)_Beta1" --modulePaths "D://待检测模块1路径,D://待检测模块2路径" --outputPath " D://扫描结果输出路径"
api-compat --startVersion "HarmonyOS_6.1.1(24)_Release" --endVersion "HarmonyOS_26.0.0_Beta2" --arkTsFiles "D://待检测ArkTS文件路径" --cppFiles "D://待检测C++文件路径" --outputPath " D://扫描结果输出路径
api-compat --startVersion "HarmonyOS_5.0.0(12)_Release" --endVersion "HarmonyOS_6.1.0(23)_Beta1" --projectPath "D://待检测项目路径" --format "json"