Module概述
大约 1 分钟约 386 字
Module概述
Kuikly作为一个跨端的UI框架, 他本身不具备调用平台API的能力, 但是Kuikly提供了一套Module机制,你可以通过Module机制将平台的API暴露给Kuikly侧调用。 Kuikly内置了一些通用的Module, 如果这些Module不满足你业务诉求时, 你可以通过扩展原生API来自定义Module, 将更多的宿主平台API暴露给Kuikly侧使用。 下面是Kuikly内置的Module
- MemoryCacheModule
- SharedPreferencesModule
- RouterModule
- NetworkModule
- NotifyModule
- SnapshotModule
- CodecModule
- CalendarModule
- PerformanceModule
- TurboDisplayModule 仅 iOS
- VsyncModule Android iOS 鸿蒙
- BackPressModule Android iOS 鸿蒙
- FontModule Android iOS
- FileModule
- LogModule
Module 基类能力
自定义 Module 继承 Module 后,可复用基类提供的通信能力:
| 方法 | 说明 |
|---|---|
syncToNativeMethod(methodName, data: JSONObject?, callbackFn: CallbackFn?) / syncToNativeMethod(methodName, args: Array<Any>, callbackFn: AnyCallbackFn?) | 同步调用端侧方法(JSON 参数版 / 原子参数版) |
asyncToNativeMethod(methodName, data: JSONObject?, callbackFn: CallbackFn?) / asyncToNativeMethod(methodName, args: Array<Any>, callbackFn: AnyCallbackFn?) | 异步调用端侧方法(JSON 参数版 / 原子参数版) |
toNative(keepCallbackAlive, methodName, param, callback, syncCall) | 通用端侧调用通道,回参自动转 JSONObject |
toTDFNative(keepCallbackAlive, methodName, params, successCallback, errorCallback, syncCall) | TDF 双回调通道,自动解包 result 字段 |
removeCallback(callbackRef) | 销毁全局回调引用 |
模块名需通过 moduleName() 返回,自定义 Module 在 Pager.createExternalModules() 中注册,详见扩展原生 API。