适用于跨平台开发的优化系统及方法、装置、介质制造方法及图纸

技术编号:32461801 阅读:15 留言:0更新日期:2022-02-26 08:52
本发明专利技术提供了一种适用于跨平台开发的优化系统,包括RN模块应用APP从远端服务器接口获取数据,RN模块提供页面更新时的处理函数;决策处理模块当页面将要更新时,利用页面更新时的处理函数进行决策处理;数据更新比对模块将数据内容发生了变化的页面中的每个数据元素定义为不同组件,每个组件能够嵌套使用,当页面组件被使用到时,执行页面刷新;渲染判断模块当页面需要进行更新渲染时,调用更新函数进行更新渲染;渲染执行模块利用更新函数检测当前页面数据和经决策处理模块处理之后的数据内容是否发生了变化。本发明专利技术从应用APP的运行卡顿的底层渲染流程分析,能够覆盖到整个应用APP的绝大部分功能,从而做到整个应用流畅提升,而不是某个别功能优化。而不是某个别功能优化。而不是某个别功能优化。

【技术实现步骤摘要】
适用于跨平台开发的优化系统及方法、装置、介质


[0001]本专利技术涉及跨平台开发
,具体地,涉及一种适用于跨平台开发的优化系统及方法、装置、介质。

技术介绍

[0002]互联网技术的普及,移动端的应用软件(Application,简称APP)的使用覆盖了人们生活的方方面面,基本每个互联网公司都有自家的APP应用。随着公司的业务发展,多年的需求迭代,移动端应用包含的功能较多,对应的业务代码功能交错,维护极为困难,这时应用的功能也很容易出现性能瓶颈,出现运行卡顿、不流畅。
[0003]随之而来就需要对应用的性能优化进行改造,但是由于业务代码复杂,功能代码堆叠交错,经历过多名开发人员修修补补转手之后,优化改动需要非常小心,否则会影响应用的正常使用。那么为了再保证功能正常使用的同时,还能提升原有功能的性能,就需要在修改优化代码之前,梳理代码执行流程,理解原有的功能的实现,然后才是诊断问题出现的源头,最后才是优化代码执行性能。如果就上述的分析逻辑,又会面临如果从每个业务功能实现里去梳理卡顿的原因是非常困难的且工程量浩大的问题。
[0004]经过检索,专利文献CN112379874A公开了一种跨平台应用软件开发方法,基于获取的开发内容资源及对应的脚本模板,调用对应的跨平台开发语言设计对应的主体;利用所述跨平台开发语言创建虚拟机,以及进行类型映射,生成桥接代码;利用所述虚拟机判断加载的动态代码是否安全,利用所述跨平台开发语言中的C语言调用本地接口,并利用所述桥接代码对安全的所述动态代码进行调用;对生成的应用软件分别在多个测试平台上进行测试,并将测试通过的所述应用软件在多个开发平台之间进行访问。该现有技术虽然也可以实现跨平台应用,但是会存在开发不当的应用,依然会出现CPU内存运行负荷高的问题,C语言同样会存在内存泄露的问题。
[0005]因此,亟需研发一种能降低CPU执行负荷以及内存占用的跨平台开发的系统及方法。

技术实现思路

[0006]针对现有技术中的缺陷,本专利技术的目的是提供一种适用于跨平台开发的优化系统及方法、装置、介质,从应用APP的运行卡顿的底层渲染流程分析,从源头解决卡顿问题,能够覆盖到整个应用APP的绝大部分功能,从而做到整个应用流场提升,而不是某个别功能优化。
[0007]根据本专利技术提供的一种适用于跨平台开发的优化系统,包括:
[0008]RN模块:应用APP从远端服务器接口获取数据,进行数据更新,得到可更新页面;
[0009]渲染模块:对可更新页面进行渲染,针对可更新页面中的每个数据元素设置新值,完成整个页面的刷新。
[0010]根据本专利技术提供的一种适用于跨平台开发的优化系统,包括:
[0011]RN模块:应用APP从远端服务器接口获取数据,RN模块提供页面更新时的处理函数;
[0012]决策处理模块:当页面将要更新时,利用页面更新时的处理函数进行决策处理,如果不需要进行页面更新则返回结果为假,如果需要进行页面更新则返回结果为真;
[0013]数据更新比对模块:将数据内容发生了变化的页面中的每个数据元素定义为不同组件,每个组件能够嵌套使用,当页面组件被使用到时,执行页面刷新;
[0014]渲染判断模块:当页面需要进行更新渲染时,调用更新函数进行更新渲染;
[0015]渲染执行模块:利用更新函数检测当前页面数据和经决策处理模块处理之后的数据内容是否发生了变化,如果数据内容发生了变化,则返回结果为真,执行页面刷新渲染;如果数据内容没有发生变化,则返回结果为假,终止将要进行的页面渲染。
[0016]优选地,当数据元素是基本类型时,直接比对新旧数据元素的值是否相等,如果不相等,则返回策略结果为真,执行页面刷新渲染。
[0017]优选地,当数据元素是混合数据类型实体时,比对实体内容是否一致,如果不一致,则返回策略结果为真,执行页面刷新渲染。
[0018]优选地,当数据元素为函数方法时,比对两个函数方法本身地址是否相等,如果不相等,则返回策略结果为真,执行页面刷新渲染。
[0019]优选地,当数据元素为集合时,比对新旧集合中的对象的长度是否相等,如果不相等,则返回策略结果为真,执行页面刷新渲染。
[0020]优选地,当数据元素为对象时,比对新旧数据的序列化结果是否相等,如果不相等,则返回策略结果为真,执行页面刷新渲染。
[0021]根据本专利技术提供的一种适用于跨平台开发的优化方法,包括如下步骤:
[0022]获取数据步骤:应用APP从远端服务器接口获取数据,RN模块提供页面更新时的处理函数;
[0023]决策处理步骤:当页面将要更新时,利用页面更新时的处理函数进行决策处理,如果不需要进行页面更新则返回结果为假,如果需要进行页面更新则返回结果为真;
[0024]数据更新比对步骤:将数据内容发生了变化的页面中的每个数据元素定义为不同组件,每个组件能够嵌套使用,当页面组件被使用到时,执行页面刷新;
[0025]渲染判断步骤:当页面需要进行更新渲染时,调用更新函数进行更新渲染;
[0026]渲染执行步骤:利用更新函数检测当前页面数据和经决策处理模块处理之后的数据内容是否发生了变化,如果数据内容发生了变化,则返回结果为真,执行页面刷新渲染;如果数据内容没有发生变化,则返回结果为假,终止将要进行的页面渲染。
[0027]根据本专利技术提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述的方法的步骤。
[0028]根据本专利技术提供的一种适用于跨平台开发的优化装置,包括上述的适用于跨平台开发的优化系统或者上述的存储有计算机程序的计算机可读存储介质。
[0029]与现有技术相比,本专利技术具有如下的有益效果:
[0030]1、本专利技术在应用业务数据变更后,页面将要刷新之前,检查用户可见页面得到的新数据和现有数据有没有变化,如果没有变化则跳过本次渲染操作,如果有数据有变化,只渲染数据变化的界面部分,也就是局部刷新,并且不可见的页面也跳过渲染,这样就能达到
降低CPU执行负荷以及减少内存占用的问题。
[0031]2、本专利技术通过利用React Native框架进行改造,能识别到当数据变化时,即可更新页面刷新渲染,从而无需硬编码的方式,解决了如果每次更新都是硬编码代码方式更新页面,有可能导致漏更新的地方,导致部分页面没有展示最新数据的问题。
[0032]3、本专利技术利用数据更新比对模块,使得每个组件可以嵌套使用,只有该组件被使用到时才会被执行更新渲染,在这种设计下,就可以很灵活地控制大组件和小组件的颗粒更新程度。
附图说明
[0033]通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:
[0034]图1为本专利技术中适用于跨平台开发的优化系统的第二种技术方案框架图;
[0035]图2为本专利技术中适用于跨平台开发的优化系统的第一种技术方案框架图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种适用于跨平台开发的优化系统,其特征在于,包括:RN模块:应用APP从远端服务器接口获取数据,进行数据更新,得到可更新页面;渲染模块:对可更新页面进行渲染,针对可更新页面中的每个数据元素设置新值,完成整个页面的刷新。2.一种适用于跨平台开发的优化系统,其特征在于,包括:RN模块:应用APP从远端服务器接口获取数据,RN模块提供页面更新时的处理函数;决策处理模块:当页面将要更新时,利用页面更新时的处理函数进行决策处理,如果不需要进行页面更新则返回结果为假,如果需要进行页面更新则返回结果为真;数据更新比对模块:将数据内容发生了变化的页面中的每个数据元素定义为不同组件,每个组件能够嵌套使用,当页面组件被使用到时,执行页面刷新;渲染判断模块:当页面需要进行更新渲染时,调用更新函数进行更新渲染;渲染执行模块:利用更新函数检测当前页面数据和经决策处理模块处理之后的数据内容是否发生了变化,如果数据内容发生了变化,则返回结果为真,执行页面刷新渲染;如果数据内容没有发生变化,则返回结果为假,终止将要进行的页面渲染。3.根据权利要求2所述的适用于跨平台开发的优化系统,其特征在于,当数据元素是基本类型时,直接比对新旧数据元素的值是否相等,如果不相等,则返回策略结果为真,执行页面刷新渲染。4.根据权利要求2所述的适用于跨平台开发的优化系统,其特征在于,当数据元素是混合数据类型实体时,比对实体内容是否一致,如果不一致,则返回策略结果为真,执行页面刷新渲染。5.根据权利要求2所述的适用于跨平台开发的优化系统,其特征在于,当数据元素为函数方法时,比对两个函数方法本身地址是否相等,如果不相等,则返...

【专利技术属性】
技术研发人员:王长青
申请(专利权)人:快宝上海网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1