Unify 提供的类,它主要是给原生侧使用的,方便原生侧完成桥接的注册和协议接口的调用。
UniAPI 类的是自动生成的。如果配置了`---uniapi_prefix`参数,生成的 UniAPI 类会带有配置的前缀信息。 > 更多`---uniapi_prefix`参数说明,请参见 [API CLI 参数集合](../04.CLI 使用教程.md)。
Android 中的 UniAPI 类主要提供以下能力:
- 提供模块注册,用于注册实现
Unify 生成的 interface
的Module对象,调用方法:
public static void registerModule(Object module)
- 提供
Class
作为参数,查找注册的Module对象,调用方法:
public static<T> T get(Class<T> aClass)
注意:如果您的 Flutter 项目所依赖的插件中,有多个插件是通过Unify生成的代码,那么会存在多个 UniAPI 类。在使用这些 UniAPI 类时,需要注意 UniAPI 类的类名,不要用错了。
iOS 中的 UniAPI 类主要提供以下能力:
- 导出遵守
Unify 生成的 Protocol
的类,通过UNI_EXPORT()
宏函数,实现类导出。
......
#import "UniAPI.h" // 以实际引用的 含有UniAPI前缀 的.h文件
......
@implementation xxxxExprotClasss
UNI_EXPORT(xxxxExprotClasss) // 当前类的类名作为UNI_EXPORT宏函数的参数,导出当前类
......
@end
- 加载遵守
Unify 生成的 Protocol
的类,调用方法:
+ (void)loadExportClass
详细使用参见:《iOS 端注册 Unify》。
- 基于
Unify 生成的 Protocol
的名称,查询协议的遵守者,调用方法:
+ (id)get:(NSString *)protocolName