一、整体说明
ArkTS 语言是鸿蒙系统主推的应用开发语言。因此鸿蒙系统提供给开发者的 API 绝大部分也是 ArkTS 语言的。
鸿蒙系统提供的 API 范围非常全面,包括应用服务、声明式 UI、多媒体、图形窗口、通讯、安全、Web 和 AI 等诸多能力。
鸿蒙系统是分布式操作系统,一套 SDK 可适配多设备的开发。开发者在 IDE 中创建的工程适配哪些设备,在工程中就可以使用这些设备支持的 API,而不需要下载多个 SDK。对于某些设备不支持的 API 的情况,开发者可通过 canIUse() 函数判断。
随着时间的推移,鸿蒙系统会发布新的版本,每个版本都会有配套的 API 更新。为了让开发者更容易理解,在 API 的元信息上会标记该 API 可用的最低操作系统版本。有些 API会随着版本的更新而废弃,为了保证兼容性,废弃的 API 会根据其重要程度继续保留多个版本,给开发者留出时间进行应用升级和适配。
C API
鸿蒙生态应用的主要开发语言是 ArkTS,同时也提供使用 Native 语言开发 ArkTS 模块的扩展方式,鸿蒙系统中支持这种开发方式的 C 语言接口叫 C API。C API 也包含在鸿蒙SDK 中,方便开发者使用 C 或者 C++语言实现应用相应功能。
C API 只覆盖了部分鸿蒙基础底层能力,如 libc,图形库,窗口系统,多媒体,压缩库等,并没有完全提供类似于 ArkTS API 上的完整鸿蒙平台能力,开发者可以使用 C API 开发支持鸿蒙应用框架的扩展动态库,通过 import 语句导入到 ArkTS 环境中使用。
建议使用 C API 的场景:应用性能敏感场景,如游戏,物理模拟等计算密集型场景;复用已有的 C 或 C++库场景;需要针对 CPU 特性进行专项定制场景,如 neon 加速等。
N-API 接口提供了使用 C/C++封装操作 ArkTS 对象的能力,使用类 Node 的 N-API 接口命名。开发者使用 C/C++开发业务,通过 N-API 接口实现跨语言调用,方便开发者使用高性能 C 语言能力。开发者开发一个 C/C++的 ArkTS 扩展库后,在 ArkTS 侧可以通过。
二、部分文档截图说明
图片来源:OpenHarmony官网