ArkUI-X 平台桥接 Bridge 说明
简介
平台桥接用于客户端(ArkUI)和平台(Android 或 iOS)之间传递消息,即用于 ArkUI 与平台双向数据传递、ArkUI 侧调用平台的方法、平台调用 ArkUI 侧的方法。
以 Android 平台为例,ArkTS 和 Java 没有相互调用的能力,为了实现 ArkTS 和 Java 交互,需要 ArkTS 与 C++交互,C++再与 Java 交互,反之亦然。但是对于开发者,就像是 ArkTS 和 Java 直接交互。
本文介绍如何通过平台桥接编写自定义的 Android、iOS 平台代码。ArkUI 侧具体用法请参考Bridge API,Android 侧参考BridgePlugin,iOS 侧参考BridgePlugin。
使用场景及能力
使用场景
平台桥接主要用于这样的场景:应用需要复用平台的代码,而在 OpenHarmony 中没有对应的跨平台 API(不包括 UI 相关)实现。
具体可用于以下场景:
1、ArkUI 与平台双向传递数据,如传递 JSON 数据、图片等;
2、ArkUI 侧调用平台的 API,如获取 Android 或 iOS 平台上的电池电量、复用平台上的三方库等;
3、平台调用 ArkUI 侧的方法,如复用 JavaScript 的三方库等。
说明
平台桥接支持 ArkUI 调用 Android Java API 和 iOS Objective-C API。此外,一些平台相关功能可直接通过已有的OpenHarmony跨平台API实现。
数据类型支持
平台桥接通过 JSON 格式或二进制格式序列化编解码传递数据,支持基础数据类型、数组类型和结构化数据。具体支持类型如下表
JSON 格式数据支持类型表:
二进制格式数据支持类型表:
说明
1、S 表示 string、number、boolean 类型;
2、Record 表示<key, value>类型,key 仅为 string 类型,value 为 S 类型;
3、string 类型数据最大传输大小限制为 2MB;
版权声明: 本文为 InfoQ 作者【龙儿筝】的原创文章。
原文链接:【http://xie.infoq.cn/article/37ad76c88eb8f850befc502ce】。文章转载请联系作者。
评论