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

一种降低小程序包体积的渲染方法、装置及存储介质与流程

2021-12-14 22:55:00 来源:中国专利 TAG:


1.本发明涉及计算机程序技术领域,具体涉及一种降低小程序包体积的渲染方法、装置及存储介质。


背景技术:

2.小程序是指不需要下载即可以运行的程序,它依赖于其他程序,也称作寄宿程序,常用的有微信小程序,微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态,随着小程序功能的日渐复杂,比如支持数据展示、视频播放等功能,小程序的包体积越来越大,在运行中占用的内存也越来越大,必然导致宿主程序的运行缓慢,这是现有技术中的缺陷。
3.且现有技术中,对内存的管理方式比较复杂,复杂的内存管理方法也导致小程序体积的增加,因此,降低小程序的体积在程序设计中需要考虑内存的管理。


技术实现要素:

4.本发明针对上述现有技术中一个或多个技术缺陷,提出了如下技术方案。
5.一种降低小程序包体积的渲染方法,该方法在电子设备中执行,该方法包括:获取步骤,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;申请步骤,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;渲染步骤,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
6.更进一步地,所述第一类型为视频,所述第二类型为专题。
7.更进一步地,在所述获取步骤中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。
8.更进一步地,在所述渲染步骤中:如果所述第一类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
9.更进一步地,在所述渲染步骤中:如果所述第二类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多
个专题视频,如果是,则创建一数组arr[n]保存每个专题视频的url,基于每个url获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看。
[0010]
更进一步地,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组arr[n]获取对应的专题视频url,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
[0011]
本发明还提出了一种降低小程序包体积的渲染装置,该装置设置在电子设备中执行,该装置包括:获取单元,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;申请单元,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;渲染单元,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
[0012]
更进一步地,所述第一类型为视频,所述第二类型为专题。
[0013]
更进一步地,在所述获取单元中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。
[0014]
更进一步地,在所述渲染单元中:如果所述第一类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
[0015]
更进一步地,在所述渲染单元中:如果所述第二类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组arr[n]保存每个专题视频的url,基于每个url获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看。
[0016]
更进一步地,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组
arr[n]获取对应的专题视频url,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
[0017]
本发明还提出了一种计算机可读存储介质,所述存储介质上存储有计算机程序代码,当所述计算机程序代码被计算机执行时执行上述之任一的方法。
[0018]
本发明的技术效果在于:本发明的一种降低小程序包体积的渲染方法、装置、设备及存储介质,该方法包括:获取步骤,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;申请步骤,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;渲染步骤,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。本发明中,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系申请对应的第一内存空间,由于关系表的建立,提高了内存申请的效率,由于关系表设置在宿主程序中,也减少了小程序的内容,降低了小程序的包的体积;本发明中,为了提高系统性能,申请的第一内存相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的,这样降低了小程序中复杂的内存申请机制,减少了小程序的代码,降低了小程序的体积;本发明中,小程序的显示界面只需要设置一个基本的初始界面,降低了小程序包的体积,且后期其上显示的内容,根据内容的类型配合内存的调整,使得内容显示快速且耗用内存较小,提高了小程序的运行效率,降低了对宿主程序的影响,提高了用户体验。
附图说明
[0019]
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显。
[0020]
图1是根据本发明的实施例的一种降低小程序包体积的渲染方法的流程图。
[0021]
图2是根据本发明的实施例的一种降低小程序包体积的渲染装置的结构图。
具体实施方式
[0022]
下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
[0023]
需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
[0024]
图1示出了本发明的一种降低小程序包体积的渲染方法,该方法在电子设备中执行,小程序是指不需要下载即可以运行的程序,它依赖于其他程序,也称作寄宿程序,常用的有微信小程序,微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态,随着小程序功能的日渐复杂,比如支持数据展示、视频播放等功能,小程序的包体积越来越大,在运行中占用的内存也越来越大,必然导致宿主程序的运行缓慢,这是现有技术中的一项缺陷。
[0025]
方法包括:获取步骤s101,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;申请步骤s102,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;渲染步骤s103,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
[0026]
本发明中,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系申请对应的第一内存空间,由于关系表的建立,提高了内存申请的效率,由于关系表设置在宿主程序中,也减少了小程序的内容,降低了小程序的包的体积,这是本发明的一个重要发明点。
[0027]
本发明中,为了提高系统性能,申请的第一内存相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的,这样降低了小程序中复杂的内存申请机制,减少了小程序的代码,降低了小程序的体积,这是本发明的另一个重要发明点。
[0028]
在一个实施例中,所述第一数据类型为视频,所述第二数据类型为专题。在所述获取步骤s101中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。数据对象的标识可以是id、url等等。
[0029]
在一个实施例中,在所述渲染步骤s103中:如果所述第一数据类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
[0030]
本发明中,在确定了所述数据对象类型为第一类型后,即第一类型为视频,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,由于视频的内容较大,为了流畅的播放该视频,需要将第一内存空间调大,以使得视频可以流畅的播放,然后
获取该视频的代表帧,作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看,解决了提前申请的内存空间过大导致其他应用运行缓慢、过小导致视频播放不流畅的问题,属于本技术的另一个重要发明点。
[0031]
在一个实施例中,在所述渲染步骤s103中:如果所述第二数据类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组arr[n]保存每个专题视频的url,基于每个url获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看,其中n为专题视频的个数。专题可以是包括多个专题视频的一个页面,页面上包括一个专题的主题和多个专题视频的主题,比如一个专题为

会计培训讲座’,其下面包括了多个专题视频的链接,每个链接以专题视频的主题进行展示。
[0032]
在一个实施例中,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组arr[n]获取对应的专题视频url,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
[0033]
本发明中,由于仅仅显示一个专题界面需要的内存是比较小的,所以第二调整内存空间小于视频的第一调整内存空间,这样,用户在浏览完专题页面时,如果用户需要查看专题视频,则将第二调整内存空间再次进行调整,可以将其调整为专题视频的代表帧的大小的数倍,比如10

20倍等,然后基于所述第一指针将所述专题视频从所述第二调整内存空间渲染至显示界面的view层形成专题视频界面供用户查看,且通过数组记录相应的专题视频的url,便于用于点击相应的专题视频后快速获取专题视频的链接,本发明中,小程序的显示界面只需要设置一个基本的初始界面,降低了小程序包的体积,且后期其上显示的内容,根据内容的类型配合内存的调整,使得内容显示快速且耗用内存较小,提高了小程序的运行效率,降低了对宿主程序的影响,提高了用户体验,这是本发明的另一个发明点。
[0034]
图2示出了本发明的一种降低小程序包体积的渲染装置,该装置设置在电子设备中,小程序是指不需要下载即可以运行的程序,它依赖于其他程序,也称作寄宿程序,常用的有微信小程序,微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态,随着小程序功能的日渐复杂,比如支持数据展示、视频播放等功能,小程序的包体积越来越大,在运行中占用的内存也越来越大,必然导致宿主程序的运行缓慢,这是现有技术中的一项缺陷。该装置包括:获取单元201,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;申请单元202,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;渲染单元203,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第
一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
[0035]
本发明中,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系申请对应的第一内存空间,由于关系表的建立,提高了内存申请的效率,由于关系表设置在宿主程序中,也减少了小程序的内容,降低了小程序的包的体积,这是本发明的一个重要发明点。
[0036]
本发明中,为了提高系统性能,申请的第一内存相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的,这样降低了小程序中复杂的内存申请机制,减少了小程序的代码,降低了小程序的体积,这是本发明的另一个重要发明点。
[0037]
在一个实施例中,所述第一数据类型为视频,所述第二数据类型为专题。在所述获取单元201中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。数据对象的标识可以是id、url等等。
[0038]
在一个实施例中,在所述渲染单元203中:如果所述第一数据类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
[0039]
本发明中,在确定了所述数据对象类型为第一类型后,即第一类型为视频,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,由于视频的内容较大,为了流畅的播放该视频,需要将第一内存空间调大,以使得视频可以流畅的播放,然后获取该视频的代表帧,作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看,解决了提前申请的内存空间过大导致其他应用运行缓慢、过小导致视频播放不流畅的问题,属于本技术的另一个重要发明点。
[0040]
在一个实施例中,在所述渲染单元203中:如果所述第二数据类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组arr[n]保存每个专题视频的url,基于每个url获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看,其中n为专题视频的个数。专题可以是包括多个专题视频的一个页面,页面上包括一个专题的主题和多个专题视频的主题,比如一个专题为

会计培训讲座’,
其下面包括了多个专题视频的链接,每个链接以专题视频的主题进行展示。
[0041]
在一个实施例中,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组arr[n]获取对应的专题视频url,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
[0042]
本发明中,由于仅仅显示一个专题界面需要的内存是比较小的,所以第二调整内存空间小于视频的第一调整内存空间,这样,用户在浏览完专题页面时,如果用户需要查看专题视频,则将第二调整内存空间再次进行调整,可以将其调整为专题视频的代表帧的大小的数倍,比如10

20倍等,然后基于所述第一指针将所述专题视频从所述第二调整内存空间渲染至显示界面的view层形成专题视频界面供用户查看,且通过数组记录相应的专题视频的url,便于用于点击相应的专题视频后快速获取专题视频的链接,本发明中,小程序的显示界面只需要设置一个基本的初始界面,降低了小程序包的体积,且后期其上显示的内容,根据内容的类型配合内存的调整,使得内容显示快速且耗用内存较小,提高了小程序的运行效率,降低了对宿主程序的影响,提高了用户体验,这是本发明的另一个发明点。
[0043]
本发明一个实施例中提出了一种降低小程序包体积的渲染设备,所述设备包括处理器和存储器,所述处理器与所述处理器通过总线连接,所述存储器上存储有计算机程序,所述处理器执行所述存储器上的计算机程序时实现上述的方法,该设备可以是台式计算机、服务器、笔记本、智能终端等等。
[0044]
本发明一个实施例中提出了一种计算机存储介质,所述计算机存储介质上存储有计算机程序,当所述计算机存储介质上的计算机程序被处理器执行时实现上述的方法,该计算机存储介质可以是硬盘、dvd、cd、闪存等等存储器。
[0045]
本发明的为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然, 在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0046]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质 中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例或者实施例的某些部分所述的装置。
[0047]
最后所应说明的是:以上实施例仅以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。
再多了解一些

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

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

相关文献