0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙ArkUI-X跨语言调用说明:【平台桥接(@arkui-x.bridge)】

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-05-21 15:09 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

平台桥接(@arkui-x.bridge)

简介

平台桥接用于客户端(ArkUI)和平台(AndroidiOS)之间传递消息,即用于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的三方库等。

说明
开发前请熟悉鸿蒙开发指导文档:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
平台桥接支持ArkUI调用Android Java API和iOS Objective-C API。此外,一些平台相关功能可直接通过已有的[OpenHarmony跨平台API]实现。

数据类型支持

平台桥接通过JSON格式序列化编解码传递数据,支持基础数据类型、数组类型和结构化数据。具体支持类型如下表:

ArkTSJavaObjective-C
stringjava.lang.StringNSString
number(32bit integer)java.lang.IntegerNSNumber numberWithInt
number(double)java.lang.DoubleNSNumber numberWithDouble
booleanjava.lang.BooleanNSNumber numberWithBool
nullnullNSNull
Arrayjava.util.ArrayListNSArray
Mapjava.util.HashMapNSDictionary

说明
HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿
S表示string、number、boolean类型,T表示S及其对应的数组类型; Map类型仅支持string类型的key,且仅用于方法返回。

搜狗高速浏览器截图20240326151547.png

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3986

    浏览量

    133102
  • 桥接
    +关注

    关注

    0

    文章

    40

    浏览量

    11611
  • 鸿蒙
    +关注

    关注

    60

    文章

    2863

    浏览量

    45373
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【HarmonyOS next】ArkUI-X休闲益智连连看【进阶】

    图:在华为Nova 12 Ultra(上)和iPhone13Pro(下)同步运行效果 结语 ArkUI-X通过三大核心能力重新定义平台开发: ✅ 真原生性能 - 告别WebView和JS
    发表于 06-28 21:51

    【HarmonyOS next】ArkUI-X新闻热搜聚合App【进阶】

    ArkUI-X与SwiftUI的深度集成 实现平台原生模块的混合调用 构建平台组件库 通过持续优化,我们将进一步证明\"一次开发,多端部署
    发表于 06-28 21:43

    ArkUI-X案例解析

    实现的,应首先符合ArkUI-X框架的规格要求. 在应用UI方面存在的差异,是无法借助Bridge能力来弥补的。在此建议使用ArkUI-X框架中已经适配完毕的组件,这些组件功能相对稳定且较为全面。 应用改造过程中可能涉及通过
    发表于 06-23 22:40

    ArkUI-X平台Bridge说明

    的三方库等。 说明 平台支持ArkUI调用Android Java API和iOS Obj
    发表于 06-19 23:12

    ArkUI-X应用工程结构说明

    )并可以部署到相应的OS平台,降低平台应用开发成本。 应用工程目录结构介绍 平台应用工程目录结构说明
    发表于 06-19 23:11

    ArkUI-X平台技术落地-华为运动健康(二)

    进行通信: 1.数据平台bridge -- 负责平台业务层 和 数据平台之间交互的接口定义; 2.设备类的
    发表于 06-18 23:04

    ArkUI-X平台技术落地-华为运动健康(一)

    开发工作量以及保证体验一致性,对于运动健康App而言,显得尤为重要。作为鸿蒙NEXT系统生态中的重要一员,ArkUI-X框架是我们平台技术方案的首选。结合当前运动健康三端现状,具体采
    发表于 06-18 22:53

    ArkUI-X平台应用改造指南

    ArkUI-X平台应用改造指南 现状与诉求 随着 HarmonyOS Next 5.0 版本正式发布,众多开发者基于 ArkTS 语言为 HarmonyOS Next 系统开发了大量
    发表于 06-16 23:05

    ArkUI-X与Android联动编译开发指南

    .arkui-x/android/app/build.gradle目录下设置configBuildFlag开关,可触发联动ArkTS源码编译脚本,默认为false,不执行编译ArkTS脚本文件。 //执行联动
    发表于 06-16 22:55

    ArkUI-X在Android平台动态化开发指南

    如果应用使用了框架引擎动态化,首次下载引擎库后将其放置/data/data/应用/files/arkui-x/libs/arm64-v8a 目录,之后再打开对应平台界面时初始化框架: 注意:初始化
    发表于 06-15 23:33

    ArkUI-X框架LogInterface使用指南

    ArkUI-X框架支持日志拦截能力,Android侧提供原生接口,用于注入LogInterface接口,框架日志及ts日志通过该接口输出,本文的核心内容是介绍如何在Android平台上有效利用
    发表于 06-15 23:20

    ArkUI-x平台Bridge最佳实践

    bridge核心架构思想 平台接机制是ArkUI-X框架提供的⼀种ArkTs语⾔和平台原⽣语⾔(Java、OC)之间通信的机制,⽅便⼆者互
    发表于 06-10 23:06

    ArkUI-X与Android消息通信

    \'@arkui-x.bridge\'; // 创建平台实例 const bridgeImpl = bridge.createBri
    发表于 06-08 22:15

    ArkUI-X中Plugin生命周期开发指南

    ArkUI-X插件用于拓展ArkUI应用的能力,提供管理插件生命周期的能力。本文主要介绍Android平台ArkUI-X插件生命周期的使用。 Android
    发表于 06-04 22:36

    ArkUI-X平台框架接入指南

    ArkUI平台框架(ArkUI-X)进一步将ArkUI开发框架扩展到了多个OS平台:目前支持O
    发表于 05-18 18:21