鸿蒙ArkUI-X跨语言调用说明:【平台桥接开发指南(Android)Bridge API】

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

本模块提供ArkUI端和Android或iOS平台端消息通信的功能,包括数据传输、方法调用和事件调用。需配套平台端API使用,Android侧请参考[BridgePlugin],iOS侧参考[BridgePlugin]。

说明:
开发前请熟悉鸿蒙开发指导文档: gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。
本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import bridge from '@arkui-x.bridge';

createBridge

createBridge(bridgeName: string): BridgeObject

定义BridgeObject类。

系统能力:  SystemCapability.ArkUI.ArkUI.Full

参数:

参数名类型必填说明
bridgeNamestring定义桥接名称。

返回值:

类型说明
[BridgeObject]桥接的接口类。

示例:

const bridgeObj: BridgeObject = bridge.createBridge('Bridge');

BridgeObject

桥接的接口类。

callMethod

callMethod(methodName: string, parameters?: Record<string, Parameter>): Promise<ResultValue>;

callMethod(methodName: string, ...parameters: Array<any>): Promise<ResultValue>;

调用平台方法。

系统能力:  SystemCapability.ArkUI.ArkUI.Full

参数:

参数名类型必填说明
methodNamestring方法名称。
parametersRecord<string, Parameter>方法参数列表。
parametersArray<any>方法参数列表。

返回值:

类型说明
[ResultValue]平台方法执行结果。

错误码:

错误码ID错误信息
1管道不可用。
4方法名称错误。
5方法正确运行,不能重复运行。
6方法未实现。

示例:

const bridgeObj = bridge.createBridge('Bridge');bridgeObj.callMethod('nativeMethod').then((data)=>{console.log('data = ' + data);
}).catch((err) => {console.error('error = ' + JSON.stringify(err));
});

registerMethod

registerMethod(method: MethodData, callback: AsyncCallback<void>): void

registerMethod(method: MethodData): Promise<void>

注册ArkUI端方法,供Android或iOS平台端调用。

系统能力:  SystemCapability.ArkUI.ArkUI.Full

参数:

参数名类型必填说明
methodMethodData方法数据。
callbackAsyncCallback<void>callback方式的回调函数。

错误码:

错误码ID错误信息
1管道不可用。
8方法已经被注册,不允许重复注册。

示例:

function jsMethod() {return 'ts return:jsMethod';
}const bridgeObj = bridge.createBridge('Bridge');
bridgeObj.registerMethod({ name: 'jsMethod', method: jsMethod });
unRegisterMethod
unRegisterMethod(methodName: string, callback: AsyncCallback<void>): voidunRegisterMethod(methodName: string): Promise<void>

移除已注册的ArkUI端的方法。

参数:

参数名类型必填说明
methodstring方法名称。
callbackAsyncCallback<void>callback方式的回调函数。

系统能力:  SystemCapability.ArkUI.ArkUI.Full

示例:

const bridgeObj = bridge.createBridge('Bridge');bridgeObj.unRegisterMethod('jsMethod');

sendMessage

sendMessage(message: Message, callback: AsyncCallback<Response>): void

sendMessage(message: Message): Promise<Response>

向Platform平台侧发送数据。

参数:

参数名类型必填说明
message[Message]数据。
callbackAsyncCallback<void>callback方式的回调函数。

返回值:

类型说明
[Response]Platform平台侧应答数据。

系统能力:  SystemCapability.ArkUI.ArkUI.Full

示例:

const bridgeObj = bridge.createBridge('Bridge');bridgeObj.sendMessage('jsMessage').then((data)=>{console.log('data =' + data);
}).catch((err) => {console.error('error =' + JSON.stringify(err));
});

setMessageListener

setMessageListener(callback: (message: Message) => Response)

设置用于接收Platform平台侧发送数据的回调。

参数:

参数名类型 HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿必填说明
callback(message: Message)=>Response回调函数,接收Platform平台侧数据。
message[Message]Platform平台侧数据。


系统能力:  SystemCapability.ArkUI.ArkUI.Full

示例:

const bridgeObj = bridge.createBridge('Bridge');bridgeObj.setMessageListener((data) => {console.log('receive data =' + data);
});

S

type S = number | boolean | string | null

说明:  定义桥接使用的基础数据类型。

T

type T = S | Array<number> | Array<boolean> | Array<string>

说明:  定义桥接使用的基础数据类型的数组类型。

Message

type Message = T | Record<string, T>

说明:  定义桥接使用结构数据类型。

Parameter

type Parameter = Message

说明:  定义方法参数类型。

Response

type Response = Message

说明:  定义应答的数据类型。

ResultValue

type ResultValue = T | Map<string, T>

说明:  定义方法返回值的类型。

鸿蒙Next核心技术分享

1、鸿蒙基础知识←《鸿蒙NEXT星河版开发学习文档》

2、鸿蒙ArkUI←《鸿蒙NEXT星河版开发学习文档》

3、鸿蒙进阶技术←《鸿蒙NEXT星河版开发学习文档》

 4、鸿蒙就业高级技能←《鸿蒙NEXT星河版开发学习文档》 

 5、鸿蒙多媒体技术←《鸿蒙NEXT星河版开发学习文档》 

6、鸿蒙南向驱动开发←《鸿蒙NEXT星河版开发学习文档》  

7、鸿蒙南向内核设备开发←《鸿蒙NEXT星河版开发学习文档》  

 8、鸿蒙系统裁剪与移植←《鸿蒙NEXT星河版开发学习文档》  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/844138.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jmeter 安装教程:简单易懂

随着互联网的不断发展&#xff0c;网站和应用程序的性能测试变得越来越重要。Apache JMeter 是一款广泛使用的性能测试工具&#xff0c;它强大且使用广泛&#xff0c;适用于各种性能测试需求。不论你是刚刚接触性能测试的新手&#xff0c;还是一位有经验的测试工程师&#xff0…

通过花生壳对git服务器做内网穿透

很长一段时间内公司的git服务器只能够在公司内网访问&#xff0c;最近出差的同事比较多&#xff0c;通过外网访问git服务器的需求也迫在眉睫&#xff0c;于是选择了贝锐“花生壳”做内网穿透处理。 首先去贝锐官网购买花生壳映射&#xff0c;我选择的是个人标准版本&#xff0c…

内存卡频频提示格式化?数据恢复全攻略

内存卡提示需要格式化 在数字时代&#xff0c;内存卡作为我们存储数据的常用设备&#xff0c;广泛应用于手机、相机、无人机等多种设备中。然而&#xff0c;不少用户在使用过程中会突然遭遇一个令人头疼的问题——内存卡提示需要格式化。这一提示往往伴随着数据的丢失风险&…

采用全自动贴片机来组装和满足回流焊工艺,列产品小,效率高,低输出纹波—— TPVT-W5系列

TPVT-W5系列是一款标准的表面贴装电源模块&#xff0c;完全实现采用全自动贴片机来组装和满足回流焊工艺&#xff0c;大大提高产能和降低人工费用。此系列产品小&#xff0c;效率高&#xff0c;低输出纹波及提供3000V以上的直流电压隔离&#xff0c;SMD封装。

Android framework修改,禁止指定包名的apk安装到设备上(基于Android10.0.0-r41)

文章目录 Android framework修改&#xff0c;禁止指定包名的apk安装到设备上(基于Android10.0.0-r41)1.新增接口提供给上层调用2.在pms中实现新增的接口3.找到preparePackageLI方法。4.测试验证 Android framework修改&#xff0c;禁止指定包名的apk安装到设备上(基于Android10…

钛媒体首发 | 百度沈抖回应大模型价格战:希望大家别再天天拉表格比价格

ITValue “有这个时间&#xff0c;不如去卷场景、卷应用。” 作者&#xff5c;张帅 编辑&#xff5c;盖虹达 首发&#xff5c;钛媒体APP ITValue 钛媒体App 5月28日消息&#xff0c;在2024智能经济论坛上&#xff0c;百度集团执行副总裁、百度智能云事业群总裁沈抖介绍了文心系…

免费,Python蓝桥杯等级考试真题--第16级(含答案解析和代码)

Python蓝桥杯等级考试真题–第16级 一、 选择题 答案&#xff1a;B 解析&#xff1a;&#xff08;75&#xff09;//212//26&#xff0c;故答案为B。 答案&#xff1a;B 解析&#xff1a;因为x15&#xff0c;所以range&#xff08;2,15&#xff09;&#xff0c;i的取值为2-14&a…

Java+mysql酒店管理系统

1&#xff0e;引言 1.1编写的目的 本文档为酒店管理系统需求分析报告&#xff0c;为酒店管理系统的设计的主要依据&#xff0c;主要针对酒店管理系统的概要设计和详细设计人员&#xff0c;作为项目验收的主要依据。 1.2背景 本软件全称为阳光酒店管理系统。 1.3 参考资料 …

云平台教程 | 手把手教你GSEA富集分析和解读

爱基百客云平台小工具使用 1.1 爱基百客云平台之GSEA分析 1.2 GSEA富集分析原理图 1.3 GSEA富集分析过程 1.4 参数设置 1.5 任务查看 1.6 结果 1.6.1 富集结果表格 1.6.2 富集可视化图解读 01 爱基百客云平台小工具使用 首先&#xff0c;打开爱基百客官网&#xff1a;http://w…

STM32——启动文件选择及启动文件宏定义

文章目录 前提&#xff1a;以STM32F1xx系列芯片为例&#xff08;有方法&#xff0c;其他系列一样&#xff09;启动文件选择对应启动文件的寻找方法对应宏定义#define的寻找方法另外 前提&#xff1a;以STM32F1xx系列芯片为例&#xff08;有方法&#xff0c;其他系列一样&#x…

时间|基于SprinBoot+vue的时间管理系统(源码+数据库+文档)

时间管理系统 目录 基于SprinBootvue的时间管理系统 一、前言 二、系统设计 三、系统功能设计 1管理员功能模块 2用户功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂码农…

VMware vSphere Distributed Services Engine 和利用 DPU 实现网络加速

VMware相关学习专栏&#xff1a;虚拟化技术 vSphere 8.0 通过加速数据处理单元 (DPU) 上的网络功能实现了突破性的工作负载性能。 vSphere 8.0 通过加速 DPU 上的网络功能实现了突破性工作负载性能&#xff0c;从而满足现代分布式工作负载的吞吐量和延迟需求。借助 vSphere Dis…

物联网都有什么优缺点?——青创智通

工业物联网平台解决方案 物联网&#xff0c;这个曾经似乎遥不可及的科技概念&#xff0c;如今已逐渐渗透到我们生活的方方面面。从智能家居到智能工业&#xff0c;从智能医疗到智能城市&#xff0c;物联网技术正在改变着我们的世界。 然而&#xff0c;正如任何一项技术一样&a…

解决 git:OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 0

解决 git&#xff1a;OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 0 问题 git pull报错&#xff1a;fatal: unable to access ‘https://github.com/aircrushin/ultrav-music.git/’: Failed to connect to github.com port 443 after 21077 ms: Couldn’t connect to serve…

IPv4组播——组播IP,MAC地址,组播网络基本架构

目录 一.组播的好处 二.组播实现原理 1.组播IP地址 2.组播MAC地址 &#xff08;1&#xff09;前24位 &#xff08;2&#xff09;第25位 &#xff08;3&#xff09;低23位 三.组播网络基本架构 1.源端网络 2.组播转发网络 3.成员端网络 四.组播服务类型 根据组播源…

2024长三角快递物流展即将亮相,致鸿物流器材有限公司值得关注

广东致鸿物流器材有限公司&#xff0c;前身为广州致鸿物流器材有限公司&#xff0c;成立于2002年初&#xff0c;是一家中国专业仓储笼研发制造公司&#xff0c;公司员工约400名&#xff0c;日产仓储笼制造规模近8000个&#xff0c;在全国范围内有五大配送服务中心&#xff1a;江…

一次收获颇丰的Google漏洞挖掘旅程

本文由安全专家Henry N. Caga于2024年03月23日发表在InfoSecWrite-ups网站&#xff0c;本文记录了Henry N. Caga的一次漏洞挖掘过程&#xff0c;此次漏洞挖掘的成果得到了Google官方认可&#xff0c;拿到了4133.70美元的漏洞奖金&#xff0c;并让他成功进入了Google名人堂。本文…

数组和特殊矩阵的压缩存储

文章目录 一维数组二维数组特殊矩阵对称矩阵三角矩阵三对角矩阵稀疏矩阵三元组法十字链表法 一维数组 以一维数组A[0...n-1]为例&#xff0c;其存储结构关系式为 LOC ⁡ ( a i ) LOC ⁡ ( a 0 ) i L ( 0 ⩽ i < n ) \operatorname{LOC}\left(a_i\right)\operatorname{LO…

自动化使用 ChatGPT 生成 PPT 大纲 - 基于 Python 和 PyAutoGUI

这篇文章将指导您利用 Python 的 pyautogui 库创建一个自动化的脚本&#xff0c;帮助您使用 ChatGPT 生成公司智能管理平台的 PPT 大纲。该脚本将打开 Chrome 浏览器&#xff0c;访问 ChatGPT 并输入相应的提示词&#xff0c;让 ChatGPT 为您创建 PPT 大纲。 C:\pythoncode\ne…

QGis3.34.5工具软件保存样式,软件无反应问题

在使用QGis软件保存SLD样式的时候&#xff0c;每次保存样式&#xff0c;软件都进入无反应状态&#xff0c;导致无法生成样式文件 百度中多次查询问题点&#xff0c;终未能在在3.34.5这个版本上解决问题。 考虑到可能是软件本身问题&#xff0c;于是删除了3.34.5这个版本&#x…