一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

移动端混合模式的SDK系统与移动设备的制作方法

2021-11-09 22:17:00 来源:中国专利 TAG:

移动端混合模式的sdk系统与移动设备
技术领域
1.本发明涉及软件技术领域,尤其涉及一种移动端混合模式的sdk系统与移动设备。


背景技术:

2.在跨端应用的开发中,使用网页视图作为媒介是常用的方案之一,可以实现一套代码同时运行在安卓端、pc端、以及ios端。市面上会有使用jsbridge作为桥阶层,管理java到h5之间的通信方案来实现hybird。但这种做法只是简单的做到的通信,并未形成标准化的体系,以及复杂场景的适配,对于插件的插拔也不友好。


技术实现要素:

3.有鉴于此,本发明提供一种移动端混合模式(hybrid)的sdk(software development kit,即软件开发工具包)系统与移动设备,能实现一份应用可同时支撑多套h5应用的运行环境。
4.第一方面,移动端混合模式的sdk系统,包括:从上而下设置的应用层、sdk层、引擎层以及系统层;
5.所述引擎层包括多应用架构模块,所述多应用架构模块包括多个activity以及集成activity的归属功能,每个activity对应一份fragmentstack,所述activity的归属功能用于实现多个应用之间的切换,所述多应用架构模块还用于同时打开多个应用。
6.进一步地,所述引擎层还包括多页加载模块,所述多页加载模块用于提供window插件,支持多页应用,让每一个页面运行在独立的网页视图(webview)中,网页视图使用fragment承载。
7.进一步地,所述多页加载模块还用于提供统一路由应用程序接口(application programming interface),通过总线实现页面跳转。
8.进一步地,所述引擎层还包括配置中心模块,用于基于配置表动态加载插件。
9.进一步地,移动端混合模式的sdk系统的原生端接口通过cookie管理器(即cookiemanager)实现cookies同步。
10.进一步地,移动端混合模式的sdk系统的原生端集成用于对日志信息的可视化处理的模块。
11.进一步地,所述引擎层还包括资源更新模块,用于对所有资源类请求进行拦截,将资源下载到本地保存,遇到已缓存的资源时,直接返回资源的流。
12.进一步地,所述引擎层还包括远程调试模块,用于在调试阶段对自定义协议拦截,使用流的方式将文件流发送给前端以实现文件跨域。
13.第二方面,一种移动设备,包括所述的移动端混合模式的sdk系统。
14.本发明移动端混合模式的sdk系统与移动设备,通过在架构上使用多activity,每个activity对应一份fragmentstack,来实现一个应用承载多套前端应用的需求;同时利用activity的归属功能,使应用间的切换与普通应用一样,可以使用应用抽屉的形式切换;应
用的打开逻辑中;使用了lru的设计思想,一次最多打开多个应用,实现一份应用可同时支撑多套h5应用的运行环境。
附图说明
15.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
16.图1为根据本发明示例性第一实施例的移动端混合模式的sdk系统的结构框图。
具体实施方式
17.下面结合附图对本发明实施例进行详细描述。
18.需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合;并且,基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
19.需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
20.图1为根据本发明示例性第一实施例的移动端混合模式的sdk系统的结构框图,如图1所示,本发明移动端混合模式的sdk系统,包括:从上而下设置的应用层、sdk层、引擎层以及系统层;
21.所述引擎层包括多应用架构模块,所述多应用架构模块包括多个activity以及集成taskaffinity的功能(即activity的归属功能),每个activity对应一份fragmentstack,所述taskaffinity的功能用于实现多个应用之间的切换,所述多应用架构模块还用于同时打开多个应用。
22.进一步地,所述引擎层还包括多页加载模块,所述多页加载模块用于提供window插件,支持多页应用,让每一个页面运行在独立的网页视图中,网页视图使用fragment承载,由自定义的fragmentstack来管理fragment的栈。
23.进一步地,所述多页加载模块还用于提供stash方法辅助维护网页视图状态,以及提供统一路由应用程序接口,通过总线实现页面跳转,用总线的方式管理复杂场景下的页面跳转。
24.所述引擎层还包括配置中心模块,用于基于配置表动态加载插件,实现了插件的可插拔;同时插件本身可以按需反射加载,即使出现插件未配置的异常,也不会到导致应用的崩溃。
25.进一步地,移动端混合模式的sdk系统的原生端接口通过cookie管理器实现cookies同步。
26.进一步地,移动端混合模式的sdk系统的前端hook consolegeng方法,原生端集成用于对日志信息的可视化处理的模块。
27.进一步地,所述引擎层还包括资源更新模块,用于基于shouldinterceptrequest方法,对所有资源类请求进行拦截,将资源下载到本地保存,遇到已缓存的资源时,直接返回资源的流。通过重写shouldinterceptrequest方法,对所有资源类请求进行拦截,将资源下载到本地保存。遇到已缓存的资源时,可直接返回资源的流,避免同一份资源的多次请求。
28.进一步地,所述引擎层还包括远程调试模块,用于在调试阶段对自定义协议拦截,使用流的方式将文件流发送给前端以实现文件跨域。调试阶段,通过使用自定义协议agree://来代替常用的文件协议。在sdk中进行自定义协议拦截,使用流的方式将文件流发送给前端,达到调试阶段的文件跨域。
29.此外,jsbridge设计使用对象注入的形式,实现h5与java代码的互相调用,包括同异步方法的处理,同时也避免了丢包风险;同时自定义callbackid,实现了自定义回调。
30.本发明移动端混合模式的sdk系统,通过在架构上使用多activity,每个activity对应一份fragmentstack,来实现一个应用承载多套前端应用的需求;同时利用taskaffinity的功能,使应用间的切换与普通应用一样,可以使用应用抽屉的形式切换;应用的打开逻辑中;使用了lru的设计思想,一次最多打开多个(比如5个)应用,实现一份应用可同时支撑多套h5应用的运行环境。该移动端混合模式的sdk系统提供了良好的外部扩展功能,拥有功能插件化、事件机制、js应用程序接口定制等能力。平台提供了标准的应用程序接口来访问设备功能,例如设备信息、摄像头,文件系统等。通过一套统一标准的js层与native层通信的插件通信机制,可以很方便的进行原生插件拓展,兼容现有的其他原生开发及web开发使用的技术方案,可满足不同的业务需求。
31.此外,本发明还提供一种移动设备,包括所述的移动端混合模式的sdk系统。该移动设备具有上述移动端混合模式的sdk系统相应的技术效果。具体包括:
32.1、相比如传统jsbridge方案,新增了自定义方法回调与多次回调,可适用于如下载进度,播放进度等需求,该类需求在传统jsbridge的做法通常由原生端完成。此处的改进也极大了丰富了前端开发的体验,让整体开发的注意力可以更关注h5的层面。
33.2、多页技术支持:
34.为了解决单一网页视图压力过大的问题,我们使用多个网页视图去承载页面,来达到对于“多页”的支持,使得整个sdk对于h5工程的承载容量得到了极大的提高。对前端来说,页面的跳转有两种方式:使用路由跳转和使用应用程序接口跳转。这样开发人员可以根据实际需求,选择不同的跳转方式,同时也可以基于不同的业务线进行拆分,使不同业务线之间的页面状态互不影响。
35.3、多应用技术支持:
36.为了适应超级应用的体量,一份h5的支撑肯定是不足的,因此在多页架构的基础上我们设计了多应用支持,一份应用可同时支撑多套h5应用的运行环境。同时提供了路由总线,方便了复杂页面之间的跳转。
37.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应
涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献