System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及应用程序开发领域,尤其涉及一种web应用跨平台交互方法、系统及装置。
技术介绍
1、随着移动设备和操作系统的多样化,应用需要在多个平台上运行以满足用户需求。常见的操作系统包括鸿蒙系统、安卓系统和苹果的ios系统。除此之外,h5技术在web端的广泛应用也使得开发跨平台的应用成为趋势。然而,不同平台之间存在的差异,使得开发者在实现web应用的跨平台交互时面临诸多挑战。
2、具体而言,针对不同平台(如鸿蒙系统、安卓系统、ios系统)各自独特的开发环境、语言和工具,开发者需要投入大量时间和精力分别进行开发和维护,导致工作量巨大、版本不一致和用户体验差异等问题。此外,不同平台之间的通信和数据共享复杂,开发者需要编写多套代码以处理各平台的数据传递和同步,增加了系统的复杂性和维护成本。设备特性和功能的差异(如操作系统接口、硬件功能和权限管理)进一步加剧了开发难度,开发者需要针对这些差异进行专门处理,以确保应用在不同设备上的一致性和功能完整性。跨平台框架在调用设备原生功能时存在性能瓶颈,无法充分利用设备硬件资源,导致应用运行效率低下和用户体验不佳。此外,多平台开发和维护成本高,开发团队需要投入大量的人力和财力,开发周期延长。安全性和权限管理的统一也是一大挑战,不同平台在处理用户权限和数据安全方面存在差异,开发者需要编写额外代码以适应这些差异,确保应用安全性和数据隐私。
技术实现思路
1、本申请提供了一种web应用跨平台交互方法、系统及装置,目的在于使得web应用能够在多个平台
2、为了实现上述目的,本申请提供了以下技术方案:
3、一种web应用跨平台交互方法,应用于前端、中间件和后端所组成的系统中,所述中间件包括平台适配器以及统一接口,所述方法包括:
4、当web应用被激活时,所述前端向所述中间件发送通知命令;
5、所述平台适配器基于所述通知命令,识别所述web应用所对应的操作平台;
6、所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量;
7、所述平台适配器将所述临时变量的操作封装为javascript方法,并将所述javascript方法部署至所述统一接口内;
8、当所述web应用发生命令事件时,所述前端向所述中间件发送对应的服务请求;
9、所述统一接口调用所述javascript方法,生成所述服务请求所匹配的数据请求,以及将所述数据请求发送至所述后端;
10、所述后端基于所述数据请求,向所述统一接口发送对应的响应数据;
11、所述统一接口发送所述响应数据至所述前端,以使得所述web应用完成所述命令事件的响应。
12、可选的,所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量,包括:
13、如果所述操作平台是ios系统,所述平台适配器读取webkit内核的全局变量,并将所述webkit内核的全局变量存入临时变量。
14、可选的,所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量,包括:
15、如果所述操作平台不是ios系统,所述平台适配器读取指定浏览器内核的全局变量,并将所述指定浏览器内核的全局变量存入临时变量;所述指定浏览器内核包括安卓浏览器内核或鸿蒙浏览器内核。
16、可选的,所述javascript方法包括native.getdeviceinfo方法,所述统一接口调用所述javascript方法,生成所述服务请求所匹配的数据请求,包括:
17、如果所述服务请求的类型为设备信息获取,所述统一接口调用所述native.getdeviceinfo方法,生成所述服务请求所匹配的数据请求。
18、可选的,所述javascript方法包括native.setnativeparams方法以及native.getnativeparams方法,所述统一接口调用所述javascript方法,生成所述服务请求所匹配的数据请求,包括:
19、如果所述服务请求的类型为浏览器参数传递,所述统一接口调用所述native.setnativeparams方法以及所述native.getnativeparams方法,生成所述服务请求所匹配的数据请求。
20、可选的,所述javascript方法包括native.setaccesstoken方法,所述统一接口调用所述javascript方法,生成所述服务请求所匹配的数据请求,包括:
21、如果所述服务请求的类型为权限管理和安全控制,所述统一接口调用所述native.setaccesstoken方法,生成所述服务请求所匹配的数据请求。
22、可选的,所述javascript方法包括native.download方法,所述统一接口调用所述javascript方法,生成所述服务请求所匹配的数据请求,包括:
23、如果所述服务请求的类型为下载文件,所述统一接口调用所述native.download方法,生成所述服务请求所匹配的数据请求。
24、一种web应用跨平台交互系统,包括:
25、前端、中间件以及后端;
26、所述前端用于:当web应用被激活时,向中间件发送通知命令:当所述web应用发生命令事件时,向所述中间件发送对应的服务请求;
27、所述中间件用于:基于所述通知命令,识别所述web应用所对应的操作平台;获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量;将所述临时变量的操作封装为javascript方法;调用所述javascript方法,生成所述服务请求所匹配的数据请求,以及将所述数据请求发送至所述后端;将所述后端发送的响应数据发送至所述前端,以使得所述web应用完成所述命令事件的响应;
28、所述后端用于:基于所述数据请求,向所述中间件发送对应的响应数据。
29、一种web应用跨平台交互装置,包括:
30、平台识别单元,用于基于前端发送的通知命令,识别web应用所对应的操作平台;
31、变量确定单元,用于获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量;
32、方法封装单元,用于将所述临时变量的操作封装为javascript方法;
33、方法调用单元,用于调用所述javascript方法,生成所述前端发送的服务请求所匹配的数据请求,以及将所述数据请求发送至后端;
34、数据反馈单元,用于将所述后端发送的响应数据发送至所述前端,以使得所述web应用完成命令事件的响应。
35、可选的,所述变量确定单元具体用于:
36、如果所述操作平台是ios系统,读取webkit内核的全局变量,并将所述webkit内核的全局变量存入临时变量。
37、本文档来自技高网...
【技术保护点】
1.一种web应用跨平台交互方法,其特征在于,应用于前端、中间件和后端所组成的系统中,所述中间件包括平台适配器以及统一接口,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量,包括:
3.根据权利要求1所述的方法,其特征在于,所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量,包括:
4.根据权利要求1所述的方法,其特征在于,所述JavaScript方法包括native.getDeviceInfo方法,所述统一接口调用所述JavaScript方法,生成所述服务请求所匹配的数据请求,包括:
5.根据权利要求1所述的方法,其特征在于,所述JavaScript方法包括native.setNativeParams方法以及native.getNativeParams方法,所述统一接口调用所述JavaScript方法,生成所述服务请求所匹配的数据请求,包括:
6.根据权利要求1所述的方法,其特征在于,所述JavaScri
7.根据权利要求1所述的方法,其特征在于,所述JavaScript方法包括native.download方法,所述统一接口调用所述JavaScript方法,生成所述服务请求所匹配的数据请求,包括:
8.一种web应用跨平台交互系统,其特征在于,包括:
9.根据权利要求8所述的系统,其特征在于,所述中间件还用于执行上述权利要求2-7中任一所述的web应用跨平台交互方法。
10.一种web应用跨平台交互装置,其特征在于,包括:
...【技术特征摘要】
1.一种web应用跨平台交互方法,其特征在于,应用于前端、中间件和后端所组成的系统中,所述中间件包括平台适配器以及统一接口,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量,包括:
3.根据权利要求1所述的方法,其特征在于,所述平台适配器获得与所述操作平台相匹配的全局变量,并将所述全局变量存入临时变量,包括:
4.根据权利要求1所述的方法,其特征在于,所述javascript方法包括native.getdeviceinfo方法,所述统一接口调用所述javascript方法,生成所述服务请求所匹配的数据请求,包括:
5.根据权利要求1所述的方法,其特征在于,所述javascript方法包括native.setnativeparams方法以及native.getnat...
【专利技术属性】
技术研发人员:张胜庆,郭红钧,赵思扬,吴冰洁,梁玮峰,卢刚,陈旭,
申请(专利权)人:长安汽车金融有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。