您现在的位置是:亿华云 > IT科技
ArkUI调用Java PA,使用Java FA的Webview组件
亿华云2025-10-09 12:57:43【IT科技】0人已围观
简介想了解更多内容,请访问:和华为官方合作共建的鸿蒙技术社区https://harmonyos.51cto.com1.业务实践背景:声明式UI开发框架(ArkUI),没有WebView组件,如何从ArkU
想了解更多内容,用J用请访问:
和华为官方合作共建的用J用鸿蒙技术社区
https://harmonyos.51cto.com
1.业务实践背景:
声明式UI开发框架(ArkUI),没有WebView组件,用J用如何从ArkUI从发起调用Java PA从Java的用J用PA跳转到Java的FA,使用Java FA的用J用WebView组件?
2.业务实现逻辑
2.1 建立ets的工程,使用api 7.0 构建;
2.2 ArkUI的用J用初始界面添加onClick点击事件,从ArkUI发起对Java PA(Service Ability)的用J用调用;
UI视图如下:

构建ets视图代码如下:

2.3 ArkUI调用Java PA(Service Ability)机制:

通过FeatureAbility.callAbility({ }),呼叫后台定义的用J用Java PA(Service Ability),目前有两种机制可以实现。用J用
方舟开发框架-基于JS扩展的用J用类Web开发范式框架提供了一种FA(JS API)调用PA(Java API)的机制,包含远端调用Ability和本地调用Internal Ability两种方式。亿华云计算用J用
FA提供了以下三个JS接口:
FeatureAbility.callAbility(OBJECT):调用PA能力
FeatureAbility.subscribeAbilityEvent(OBJECT,用J用 Function):订阅PA能力
FeatureAbility.unsubscribeAbilityEvent(OBJECT):取消订阅PA能力
JS端与Java端通过接口扩展机制进行通信,通过bundleName和abilityName来进行关联。用J用在FeatureAbility Plugin收到JS调用请求后,用J用系统根据开发者在JS指定的用J用abilityType,Ability或Internal Ability,来选择对应的方式进行处理。开发者在onRemoteRequest()中实现PA提供的业务逻辑,不同的业务通过业务码来区分。
在PA端提供的接口为:
boolean IRemoteObject.onRemoteRequest(int code, MessageParcel data, MessageParcel reply, MessageOption option):Ability方式,与FA通过rpc方式通信,该方式的优点在于PA可以被不同的FA调用。
boolean onRemoteRequest(int code, MessageParcel data, MessageParcel reply, MessageOption option):Internal Ability方式,集成在FA中,网站模板适用于与FA业务逻辑关联性强,响应时延要求高的服务。该方式仅支持本FA访问调用。
2.4 在src的Java目录下新建Service Ability,截图如下:

2.5 在Service Ability新建内部类WebRemote,继承RemoteObject,实现IRemoteBroker接口,具体代码如下:

第一步: 在onRemoteRequest方法中接受ArkUI传过来的url,通过ZSONObject解析获取;
第二步: 在获取到url后,通过Intent对象设置,通过startAbility(intent)启动到Java FA。
2.6 Java FA的布局和具体的Slice中获取加载WebView组件:


2.7 在config.json文件中配置网络访问权限:

最后的视图效果是:

文章相关附件可以点击下面的原文链接前往下载
https://harmonyos.51cto.com/resource/1589
想了解更多内容,请访问:
和华为官方合作共建的b2b供应网鸿蒙技术社区
https://harmonyos.51cto.com
很赞哦!(648)
上一篇: 国际域名转移的费用和处理步骤是什么?
下一篇: 第五步:重复第四步,直到找到正确的纪录。
热门文章
站长推荐
3、不明先知,根据相关征兆预测可能发生的事件,以便提前做好准备,赶紧注册相关域名。;不差钱域名;buchaqian抢先注册,就是这种敏感类型。预言是最敏感的状态。其次,你应该有眼力。所谓眼力,就是善于从社会上时不时出现的各种热点事件中获取与事件相关的域名资源。眼力的前提是对域名领域的熟悉和丰富的知识。
域名服务平台推荐:来聚名体验域名注册、解析、交易一站式服务
这才是 React Hooks 性能优化的正确姿势
MySQL DBA必备:MySQL 5.7升级8.0过程(全)
3、考虑出售域名
HDC2021技术分论坛:OpenHarmony驱动框架解读和开发实践
日常学习MySQL底层之MVCC、回滚段、一致性读、锁定读
多表查询用什么联接?别信感觉,用数据说话