当前位置: 首页 > news >正文

武汉网站公司多少钱2023年8月新闻热点事件

武汉网站公司多少钱,2023年8月新闻热点事件,物流网站建设模板,衡阳专业的关键词优化终报价接上一篇:arkui-x跨平台与android java联合开发-CSDN博客 本篇讲前端arkui如何与后端其他平台进行数据交互,接上一篇,后端os平台为Android java。 arkui-x框架提供了一个独特的机制:bridge。 1、前端接口定义实现 定义一个bri…

接上一篇:arkui-x跨平台与android java联合开发-CSDN博客

本篇讲前端arkui如何与后端其他平台进行数据交互,接上一篇,后端os平台为Android java。

arkui-x框架提供了一个独特的机制:bridge。

1、前端接口定义实现

定义一个bridge的class,里面创建平台桥接实例,就可以实现各种bridge接口。

这里实现了一个getThirdAppInfo接口,获取后端第三方应用的信息。参数为两个string,返回一个promise数据。promise也就是JavaScript中用于处理异步操作的一种机制,详细说法这里就不展开了。

DevEco Studio工程

import bridge from '@arkui-x.bridge';export class ThirdPartyBridge {// 创建平台桥接实例private thirdPartyBridge = bridge?.createBridge && bridge.createBridge('xBridge');public getThirdAppInfo(defaultCfg: string, sysAppList: string) {return new Promise<string>((resolve, reject) => {this.thirdPartyBridge.callMethod('getThirdAppInfo', defaultCfg, sysAppList).then((result) => {console.log("getThirdAppInfo: ", result)resolve(result ? result.toString() : "")}).catch((err: Error) => {console.log('getThirdAppInfo err', JSON.stringify(err))})})}
}

2、后端数据获取接口

Android Studio工程

import ohos.ace.adapter.capability.bridge.BridgeManager;
import ohos.ace.adapter.capability.bridge.BridgePlugin;@SuppressLint("LogNotTimber")
public class Bridge extends BridgePlugin {private static final String TAG = Bridge.class.getSimpleName();public Bridge(Context context, String name, BridgeManager bridgeManager) {super(context, name, bridgeManager);}
。。。。。。public String getThirdAppInfo(String defaultCfg, String sysAppStr) throws JSONException {
//        Log.d("getThirdAppInfo", "---para1: " + defaultCfg + " para2: " + sysAppStr);List<JSONObject> retList = new ArrayList<>();
。。。。。。
// 实现获取数据的逻辑return retList.toString();}
。。。。。。
}

这里返回数据定义为json字符串,是为了方便前端解析。

3、前端调用bridge的业务代码实现

DevEco Studio工程

import { ThirdPartyBridge } from '../../bridge/ThirdPartyBridge';
import { DesktopShowCfg, ThirdPartyAppInfo } from '../../model/ThirdPartyAppInfo'export const getThirdAppInfo = async (defaultCfg: string, sysAppList: ThirdPartyAppInfo[]): Promise<ThirdPartyAppInfo[]> => {try {let sysAppStr: string = '[';
......// ThirdPartyAppInfo[]转为stringsysAppStr += ']'const bridge = new ThirdPartyBridge()const str = await bridge.getThirdAppInfo(defaultCfg, sysAppStr)console.log("---getThirdAppInfo", `获取第三方应用信息成功:` + str)let appInfoListList: ThirdPartyAppInfo[] = JSON.parse(str) as ThirdPartyAppInfo[]console.log("---getThirdAppInfo", `获取第三方应用信息,解析成功,app数量为:` + appInfoListList.length)return appInfoListList} catch (e) {console.log("---getThirdAppInfo", `获取第三方应用信息失败`, e.message)return []}
}

这里直接使用 JSON.parse(str) as ThirdPartyAppInfo[]方式实现了快速解析json。

http://www.dt0577.cn/news/53678.html

相关文章:

  • django网站开发过程百度官网app下载
  • 佛山企业网站建设策划百度搜索推广收费标准
  • 做推广适合哪些网站台州seo优化公司
  • 营销网站建设的步骤过程网络培训平台有哪些
  • 学校网站建设系统软文网站名称
  • 硅云网站建设视频推广下载
  • wordpress 电影网站百度优化关键词
  • 网站接口需求西地那非片说明书
  • 门户网站建设意义如何给网站做推广
  • 答题网站开发教程人工智能的关键词
  • 网站被主流搜索引擎收录的网页数量seo网站优化推广怎么样
  • 自己做的网站别人打不开青岛网站优化公司
  • 备案的网站名称写什么360站长工具seo
  • 做设计值得收藏的图片网站抖音推广引流平台
  • 北京网站制作基本流程网络公司网页设计
  • 做网站的上市公司有哪些汽车宣传软文
  • iH5做网站什么是网站推广策略
  • 怎么在ftp中查看网站首页路径新闻稿营销
  • 常德做网站建设的公司外贸营销型网站建设公司
  • 天长企业网站制作互联网营销推广怎么做
  • 自学做网站界面市场调研的重要性
  • 软件做网站 编程自己写如何制作网页广告
  • 单位网站建设流程网页设计一般用什么软件
  • iis网站重定向设置统计站老站长推荐草莓
  • 外贸建站哪家自己怎么创建一个网站
  • wallbase wordpress网站seo平台
  • 网站 做 app开发工具关键词排名监控
  • 黑人与白人做爰网站网站seo外包公司有哪些
  • 想做找人做网站济南网站建设哪家专业
  • 网站备案需要多少天手机搭建网站