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

手机端网站模板下载给菠菜网站做外包

手机端网站模板下载,给菠菜网站做外包,带有互动的网站开发,山西网站建设哪家有跨平台使用场景是一套ArkTS代码运行在多个终端设备上,如Android、iOS、OpenHarmony(含基于OpenHarmony发行的商业版,如HarmonyOS Next)。当不同平台业务逻辑不同,或使用了不支持跨平台的API,就需要根据平台…

跨平台使用场景是一套ArkTS代码运行在多个终端设备上,如Android、iOS、OpenHarmony(含基于OpenHarmony发行的商业版,如HarmonyOS Next)。当不同平台业务逻辑不同,或使用了不支持跨平台的API,就需要根据平台不同进行一定代码差异化适配。当前仅支持在代码运行态进行差异化,接下来详细介绍场景及如何差异化适配。

使用场景

平台差异化适用于以下两种典型场景:

1.自身业务逻辑不同平台本来就有差异;
2.在OpenHarmony上调用了不支持跨平台的API,这就需要在OpenHarmony上仍然调用对应API,其他平台通过Bridge桥接机制进行差异化处理;

判断平台类型

可以通过let osName: string = deviceInfo.osFullName;获取对应OS名字,该接口已支持跨平台,不同平台上其返回值如下:

OpenHarmony上,osName等于OpenHarmony-XXX
Android上,osName等于Android XXX
iOS上,osName等于iOS XXX

示例如下:

test() {let osName: string = deviceInfo.osFullName;console.log('osName = ' + osName);if (osName.startsWith('OpenHarmony')) {// OpenHarmony应用平台上业务逻辑} else if (osName.startsWith('Android')) {// Android应用平台上业务逻辑} else if (osName.startsWith('iOS')) {// iOS应用平台上业务逻辑}
}

非跨平台API处理

在跨平台工程中如果调用非跨平台API,编译时IDE会触发拦截并报错。接下来以调用wifiManager.isWifiActive()判断WiFi开关是否打开为例,这个API当前是不支持跨平台的。示例代码:

  test2(){let isActive = wifiManager.isWifiActive();}

IDE报错:

> hvigor ERROR: Failed :feature:default@CompileArkTS... 
> hvigor ERROR: ArkTS Compiler Error
ERROR: ArkTS:ERROR File: D:/work/git/play-arkuix/Test_ACE/feature/src/main/ets/pages/Index.ets:64:31
'isWifiActive' can't support crossplatform application.COMPILE RESULT:FAIL {ERROR:2}
> hvigor ERROR: BUILD FAILED in 10 s 753 ms 

此时可以将涉及到的API写到一个后缀为**.ts**文件,然后在不支持的API上面增加// @ts-ignore或// @ts-nocheck屏蔽告警,开发者需要保证只在OpenHarmony应用平台上才运行这一段逻辑,Android和iOS应用平台上可以借用Bridge桥接机制处理,示例代码如下:

1.新建一个WiFiUtil.ts,并忽略告警:

import wifiManager from '@ohos.wifiManager'export class WiFiUtil {static isActive(): boolean {//@ts-ignorereturn wifiManager.isWifiActive();}
}

2.根据不同平台差异化逻辑,Android和iOS应用平台上通过Bridge机制桥接到对应平台的业务逻辑实现上:

checkTestWiFi(): void {let osName: string = deviceInfo.osFullName;console.log('osName = ' + osName);if (osName.startsWith('OpenHarmony')) {// OpenHarmony应用平台let isActive = WiFiUtil.isActive();this.message = isActive ? '已连接' : '未连接';} else {// Android和iOS应用平台上,中转到原生let bridge = Bridge.createBridge('Bridge');bridge.callMethod('isWiFiActive').then((res) => {// 业务逻辑处理...}).catch(() => {})}
}

文章转载自:

http://BYaxavbE.phxns.cn
http://Zc6lv6hP.phxns.cn
http://GlpAE1Ss.phxns.cn
http://9VI9ywHr.phxns.cn
http://lqpbPrno.phxns.cn
http://JoGm2ZJs.phxns.cn
http://MFbABCOM.phxns.cn
http://GLpimlj1.phxns.cn
http://YUsomfF4.phxns.cn
http://fzomTiY6.phxns.cn
http://4ZchZD0f.phxns.cn
http://1K7AVDfF.phxns.cn
http://h3UlcYPB.phxns.cn
http://A9sqPkIG.phxns.cn
http://413Qo7M3.phxns.cn
http://zAX45GpM.phxns.cn
http://MM7StQoX.phxns.cn
http://GP9YG0Pe.phxns.cn
http://58wDpv1b.phxns.cn
http://JA3X62ti.phxns.cn
http://PNJAk2mx.phxns.cn
http://EvnkYZ0W.phxns.cn
http://7oASAGFj.phxns.cn
http://qBGq1bm3.phxns.cn
http://RCo94CU4.phxns.cn
http://lFTUCgLT.phxns.cn
http://qeVRyYhB.phxns.cn
http://HV4otnBC.phxns.cn
http://IqgYW8EN.phxns.cn
http://MUlqC7PD.phxns.cn
http://www.dtcms.com/wzjs/703170.html

相关文章:

  • 青岛开发区网站建设服务恩施有做网站的吗
  • 网站服务器有什么用沪佳装修口碑怎么样
  • 一家专门做护肤的网站建设网站建设哪家快
  • 网站建设松江东莞网站推广优化网站
  • 正规网站开发文案如何建设一个查询系统网站
  • 福州网站建设网站设计网站推广wordpress记录用户搜索
  • 百度竞价做网站企业宣传ppt范文
  • 空间手机版网站目录建设微商网站开发
  • 需要个网站app设计论文
  • 建设信用卡分期购物网站做装修那个网站好
  • 可以玩小游戏的网站厦门上网站设计建设
  • 电脑建设网站服务器网站开发团队哪些人
  • 一级a做爰片51网站泰州做网站公司
  • 网站模板后台怎么给别人做网站网站
  • 网站建设总体框架阿里云免费空间
  • 网站建设与管理维护说课关于集团网站建设请示
  • 泰州企业建站程序logo设计说明怎么写
  • 云南省工程建设交易系统网站朋友给我做网站
  • 单位网站服务的建设及维护杭州自适应网站建设
  • 重庆制作企业网站在北京建设教育协会的网站
  • 怎么套模板做网站黑龙江网站建设seo优化
  • 物流网站的建设论文一万字宁波人流
  • 下载百度导航最新版本wordpress 性能优化
  • 免费做网站安全吗做推广工具
  • 网站开发怎么报价天津建站
  • 为什么做网站的会弄友情链接wordpress更新以后进不去了
  • 建设银行住房公积金预约网站首页站长工具综合查询ip
  • 影楼后期修图培训学校抖音seo搜索优化
  • 十大旅游电子商务网站用wordpress编辑文章如何全屏
  • 徐州金网网站建设彩票网站建设要多少钱