CN113791988B - 一种降低小程序包体积的渲染方法、装置及存储介质 - Google Patents

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

Info

Publication number
CN113791988B
CN113791988B CN202111358693.8A CN202111358693A CN113791988B CN 113791988 B CN113791988 B CN 113791988B CN 202111358693 A CN202111358693 A CN 202111358693A CN 113791988 B CN113791988 B CN 113791988B
Authority
CN
China
Prior art keywords
memory space
topic
video
type
data object
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111358693.8A
Other languages
English (en)
Other versions
CN113791988A (zh
Inventor
刘宝华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHANJET INFORMATION TECHNOLOGY CO LTD
Original Assignee
CHANJET INFORMATION TECHNOLOGY CO LTD
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHANJET INFORMATION TECHNOLOGY CO LTD filed Critical CHANJET INFORMATION TECHNOLOGY CO LTD
Priority to CN202111358693.8A priority Critical patent/CN113791988B/zh
Publication of CN113791988A publication Critical patent/CN113791988A/zh
Application granted granted Critical
Publication of CN113791988B publication Critical patent/CN113791988B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提出了一种降低小程序包体积的渲染方法、装置及存储介质,该方法包括:当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;在所述电子设备的内存中申请第一内存空间,并获取其第一指针;如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一或二调整内存空间,将所述内容从所述第一或二调整内存空间渲染至显示界面的view层供用户查看。降低了小程序的包的体积及对宿主程序的影响。

Description

一种降低小程序包体积的渲染方法、装置及存储介质
技术领域
本发明涉及计算机程序技术领域,具体涉及一种降低小程序包体积的渲染方法、装置及存储介质。
背景技术
小程序是指不需要下载即可以运行的程序,它依赖于其他程序,也称作寄宿程序,常用的有微信小程序,微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态,随着小程序功能的日渐复杂,比如支持数据展示、视频播放等功能,小程序的包体积越来越大,在运行中占用的内存也越来越大,必然导致宿主程序的运行缓慢,这是现有技术中的缺陷。
且现有技术中,对内存的管理方式比较复杂,复杂的内存管理方法也导致小程序体积的增加,因此,降低小程序的体积在程序设计中需要考虑内存的管理。
发明内容
本发明针对上述现有技术中一个或多个技术缺陷,提出了如下技术方案。
一种降低小程序包体积的渲染方法,该方法在电子设备中执行,该方法包括:
获取步骤,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;
申请步骤,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;
渲染步骤,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
更进一步地,所述第一类型为视频,所述第二类型为专题。
更进一步地,在所述获取步骤中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。
更进一步地,在所述渲染步骤中:如果所述第一类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
更进一步地,在所述渲染步骤中:如果所述第二类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组Arr[n]保存每个专题视频的URL,基于每个URL获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看。
更进一步地,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组Arr[n]获取对应的专题视频URL,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
本发明还提出了一种降低小程序包体积的渲染装置,该装置设置在电子设备中执行,该装置包括:
获取单元,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;
申请单元,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;
渲染单元,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
更进一步地,所述第一类型为视频,所述第二类型为专题。
更进一步地,在所述获取单元中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。
更进一步地,在所述渲染单元中:如果所述第一类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
更进一步地,在所述渲染单元中:如果所述第二类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组Arr[n]保存每个专题视频的URL,基于每个URL获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看。
更进一步地,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组Arr[n]获取对应的专题视频URL,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
本发明还提出了一种计算机可读存储介质,所述存储介质上存储有计算机程序代码,当所述计算机程序代码被计算机执行时执行上述之任一的方法。
本发明的技术效果在于:本发明的一种降低小程序包体积的渲染方法、装置、设备及存储介质,该方法包括:获取步骤,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;申请步骤,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;渲染步骤,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。本发明中,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系申请对应的第一内存空间,由于关系表的建立,提高了内存申请的效率,由于关系表设置在宿主程序中,也减少了小程序的内容,降低了小程序的包的体积;本发明中,为了提高***性能,申请的第一内存相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的,这样降低了小程序中复杂的内存申请机制,减少了小程序的代码,降低了小程序的体积;本发明中,小程序的显示界面只需要设置一个基本的初始界面,降低了小程序包的体积,且后期其上显示的内容,根据内容的类型配合内存的调整,使得内容显示快速且耗用内存较小,提高了小程序的运行效率,降低了对宿主程序的影响,提高了用户体验。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显。
图1是根据本发明的实施例的一种降低小程序包体积的渲染方法的流程图。
图2是根据本发明的实施例的一种降低小程序包体积的渲染装置的结构图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了本发明的一种降低小程序包体积的渲染方法,该方法在电子设备中执行,小程序是指不需要下载即可以运行的程序,它依赖于其他程序,也称作寄宿程序,常用的有微信小程序,微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态,随着小程序功能的日渐复杂,比如支持数据展示、视频播放等功能,小程序的包体积越来越大,在运行中占用的内存也越来越大,必然导致宿主程序的运行缓慢,这是现有技术中的一项缺陷。
方法包括:
获取步骤S101,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;
申请步骤S102,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;
渲染步骤S103,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
本发明中,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系申请对应的第一内存空间,由于关系表的建立,提高了内存申请的效率,由于关系表设置在宿主程序中,也减少了小程序的内容,降低了小程序的包的体积,这是本发明的一个重要发明点。
本发明中,为了提高***性能,申请的第一内存相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的,这样降低了小程序中复杂的内存申请机制,减少了小程序的代码,降低了小程序的体积,这是本发明的另一个重要发明点。
在一个实施例中,所述第一数据类型为视频,所述第二数据类型为专题。在所述获取步骤S101中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。数据对象的标识可以是ID、URL等等。
在一个实施例中,在所述渲染步骤S103中:如果所述第一数据类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
本发明中,在确定了所述数据对象类型为第一类型后,即第一类型为视频,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,由于视频的内容较大,为了流畅的播放该视频,需要将第一内存空间调大,以使得视频可以流畅的播放,然后获取该视频的代表帧,作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看,解决了提前申请的内存空间过大导致其他应用运行缓慢、过小导致视频播放不流畅的问题,属于本申请的另一个重要发明点。
在一个实施例中,在所述渲染步骤S103中:如果所述第二数据类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组Arr[n]保存每个专题视频的URL,基于每个URL获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看,其中n为专题视频的个数。专题可以是包括多个专题视频的一个页面,页面上包括一个专题的主题和多个专题视频的主题,比如一个专题为‘会计培训讲座’,其下面包括了多个专题视频的链接,每个链接以专题视频的主题进行展示。
在一个实施例中,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组Arr[n]获取对应的专题视频URL,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
本发明中,由于仅仅显示一个专题界面需要的内存是比较小的,所以第二调整内存空间小于视频的第一调整内存空间,这样,用户在浏览完专题页面时,如果用户需要查看专题视频,则将第二调整内存空间再次进行调整,可以将其调整为专题视频的代表帧的大小的数倍,比如10-20倍等,然后基于所述第一指针将所述专题视频从所述第二调整内存空间渲染至显示界面的view层形成专题视频界面供用户查看,且通过数组记录相应的专题视频的URL,便于用于点击相应的专题视频后快速获取专题视频的链接,本发明中,小程序的显示界面只需要设置一个基本的初始界面,降低了小程序包的体积,且后期其上显示的内容,根据内容的类型配合内存的调整,使得内容显示快速且耗用内存较小,提高了小程序的运行效率,降低了对宿主程序的影响,提高了用户体验,这是本发明的另一个发明点。
图2示出了本发明的一种降低小程序包体积的渲染装置,该装置设置在电子设备中,小程序是指不需要下载即可以运行的程序,它依赖于其他程序,也称作寄宿程序,常用的有微信小程序,微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态,随着小程序功能的日渐复杂,比如支持数据展示、视频播放等功能,小程序的包体积越来越大,在运行中占用的内存也越来越大,必然导致宿主程序的运行缓慢,这是现有技术中的一项缺陷。该装置包括:
获取单元201,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;
申请单元202,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针;
渲染单元203,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载所述数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
本发明中,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系申请对应的第一内存空间,由于关系表的建立,提高了内存申请的效率,由于关系表设置在宿主程序中,也减少了小程序的内容,降低了小程序的包的体积,这是本发明的一个重要发明点。
本发明中,为了提高***性能,申请的第一内存相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的,这样降低了小程序中复杂的内存申请机制,减少了小程序的代码,降低了小程序的体积,这是本发明的另一个重要发明点。
在一个实施例中,所述第一数据类型为视频,所述第二数据类型为专题。在所述获取单元201中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。数据对象的标识可以是ID、URL等等。
在一个实施例中,在所述渲染单元203中:如果所述第一数据类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
本发明中,在确定了所述数据对象类型为第一类型后,即第一类型为视频,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,由于视频的内容较大,为了流畅的播放该视频,需要将第一内存空间调大,以使得视频可以流畅的播放,然后获取该视频的代表帧,作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看,解决了提前申请的内存空间过大导致其他应用运行缓慢、过小导致视频播放不流畅的问题,属于本申请的另一个重要发明点。
在一个实施例中,在所述渲染单元203中:如果所述第二数据类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组Arr[n]保存每个专题视频的URL,基于每个URL获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看,其中n为专题视频的个数。专题可以是包括多个专题视频的一个页面,页面上包括一个专题的主题和多个专题视频的主题,比如一个专题为‘会计培训讲座’,其下面包括了多个专题视频的链接,每个链接以专题视频的主题进行展示。
在一个实施例中,当用户在专题界面上点击了一个专题视频的主题时,基于所述数组Arr[n]获取对应的专题视频URL,所述小程序请求所述服务器,获取所述专题视频的基本信息,基于所述基本信息获取所述专题视频的代表帧的大小,基于所述专题视频的代表帧的大小对所述第二调整内存空间再次调整得到第三调整内存空间,所述基于所述专题视频的基本信息获取所述专题视频的代表帧,将所述视频的代表帧作为内容加载至第三调整内存空间中。
本发明中,由于仅仅显示一个专题界面需要的内存是比较小的,所以第二调整内存空间小于视频的第一调整内存空间,这样,用户在浏览完专题页面时,如果用户需要查看专题视频,则将第二调整内存空间再次进行调整,可以将其调整为专题视频的代表帧的大小的数倍,比如10-20倍等,然后基于所述第一指针将所述专题视频从所述第二调整内存空间渲染至显示界面的view层形成专题视频界面供用户查看,且通过数组记录相应的专题视频的URL,便于用于点击相应的专题视频后快速获取专题视频的链接,本发明中,小程序的显示界面只需要设置一个基本的初始界面,降低了小程序包的体积,且后期其上显示的内容,根据内容的类型配合内存的调整,使得内容显示快速且耗用内存较小,提高了小程序的运行效率,降低了对宿主程序的影响,提高了用户体验,这是本发明的另一个发明点。
本发明一个实施例中提出了一种降低小程序包体积的渲染设备,所述设备包括处理器和存储器,所述处理器与所述处理器通过总线连接,所述存储器上存储有计算机程序,所述处理器执行所述存储器上的计算机程序时实现上述的方法,该设备可以是台式计算机、服务器、笔记本、智能终端等等。
本发明一个实施例中提出了一种计算机存储介质,所述计算机存储介质上存储有计算机程序,当所述计算机存储介质上的计算机程序被处理器执行时实现上述的方法,该计算机存储介质可以是硬盘、DVD、CD、闪存等等存储器。
本发明的为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质 中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的装置。
最后所应说明的是:以上实施例仅以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种降低小程序包体积的渲染方法,该方法在电子设备中执行,其特征在于,该方法包括:
获取步骤,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;
申请步骤,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系表申请对应的第一内存空间,申请的第一内存空间相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的;
渲染步骤,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
2.根据权利要求1所述的方法,其特征在于,所述第一类型为视频,所述第二类型为专题。
3.根据权利要求2所述的方法,其特征在于,在所述获取步骤中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。
4.根据权利要求3所述的方法,其特征在于,在所述渲染步骤中:如果所述第一类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
5.根据权利要求4所述的方法,其特征在于,在所述渲染步骤中:如果所述第二类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组Arr[n]保存每个专题视频的URL,基于每个URL获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看,其中n为专题视频的个数。
6.一种降低小程序包体积的渲染装置,该装置设置在电子设备中执行,其特征在于,该装置包括:
获取单元,当用户在电子设备上的小程序的界面上进行操作时,获取用户在电子设备中操作的数据对象类型;
申请单元,在所述电子设备的内存中申请第一内存空间,并获取该第一内存空间的第一指针,第一内存空间为宿主程序根据小程序的类型申请的,即在宿主程序中建立了不同的小程序对应的内存关系表,当用户启动一个小程序时,宿主程序根据该关系表申请对应的第一内存空间,申请的第一内存空间相对较小,在后续的操作过程中,需要根据用户在小程序上的实际操作的数据对象对该第一内存空间进行调整,调整后的内存空间的起始地址保持不变,也就是调整后的内存空间的指针是不变的;
渲染单元,如果所述数据对象类型为第一类型,则基于所述第一类型对所述第一内存空间进行调整得到第一调整内存空间,如果所述数据对象类型为第二类型,则基于所述第二类型对所述第一内存空间进行调整得到第二调整内存空间,根据所述数据对象类型加载数据对象的内容至所述第一调整内存空间或第二调整内存空间,基于所述第一指针将所述内容从所述第一调整内存空间或第二调整内存空间渲染至显示界面的view层供用户查看。
7.根据权利要求6所述的装置,其特征在于,在所述获取单元中,基于用户在电子设备中操作的数据对象,所述小程序获取所述数据对象的标识,基于所述标识连接服务器查询所述数据对象的数据对象类型。
8.根据权利要求7所述的装置,其特征在于,在所述渲染单元中:如果所述第一类型为视频,所述小程序请求所述服务器,获取所述视频的基本信息,基于所述视频的基本信息获取所述视频的代表帧,将所述视频的代表帧作为第一内容加载至第一调整内存空间中,然后基于所述第一指针将所述第一内容从所述第一调整内存空间渲染至显示界面的view层形成视频界面供用户查看。
9.根据权利要求8所述的装置,其特征在于,在所述渲染单元中:如果所述第二类型为专题时,所述小程序请求所述服务器,获取所述专题的基本信息,基于所述专题的基本信息判断所述专题是否包含多个专题视频,如果是,则创建一数组Arr[n]保存每个专题视频的URL,基于每个URL获取对应的每个专题视频的主题,从所述专题的基本信息中获取代表该专题的内容,将所述专题的内容和每个专题视频的主题作为第二内容加载到第二调整内存空间中,然后基于所述第一指针将所述第二内容从所述第二调整内存空间渲染至显示界面的view层形成专题界面供用户查看,其中n为专题视频的个数。
10.一种计算机存储介质,所述计算机存储介质上存储有计算机程序,当所述计算机存储介质上的计算机程序被处理器执行时实现权利要求1-5任一项所述的方法。
CN202111358693.8A 2021-11-17 2021-11-17 一种降低小程序包体积的渲染方法、装置及存储介质 Active CN113791988B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111358693.8A CN113791988B (zh) 2021-11-17 2021-11-17 一种降低小程序包体积的渲染方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111358693.8A CN113791988B (zh) 2021-11-17 2021-11-17 一种降低小程序包体积的渲染方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN113791988A CN113791988A (zh) 2021-12-14
CN113791988B true CN113791988B (zh) 2022-02-18

Family

ID=78877358

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111358693.8A Active CN113791988B (zh) 2021-11-17 2021-11-17 一种降低小程序包体积的渲染方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN113791988B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471671A (zh) * 2017-09-06 2019-03-15 武汉斗鱼网络科技有限公司 一种程序冷启动方法和***
CN109740085A (zh) * 2019-01-10 2019-05-10 北京字节跳动网络技术有限公司 一种页面内容的展示方法、装置、设备及存储介质
CN109947504A (zh) * 2019-03-29 2019-06-28 上海连尚网络科技有限公司 一种在宿主程序中执行寄宿程序的方法与设备
CN110888740A (zh) * 2019-11-22 2020-03-17 腾讯科技(深圳)有限公司 小程序的增量内存确定方法、装置、设备及存储介质
US10699368B1 (en) * 2017-08-30 2020-06-30 Apple Inc. Memory allocation techniques for graphics shader
CN111475246A (zh) * 2020-04-10 2020-07-31 腾讯科技(深圳)有限公司 小程序页面显示方法、装置、终端和存储介质
CN112214329A (zh) * 2020-11-04 2021-01-12 腾讯科技(深圳)有限公司 内存管理方法、装置、设备及计算机可读存储介质
CN112331235A (zh) * 2021-01-04 2021-02-05 腾讯科技(深圳)有限公司 多媒体内容的编辑控制方法、装置、电子设备和存储介质
CN112650692A (zh) * 2019-10-12 2021-04-13 北京华为数字技术有限公司 堆内存分配方法、装置及存储介质
CN112861057A (zh) * 2021-02-10 2021-05-28 北京百度网讯科技有限公司 基于小程序的页面渲染方法、装置、设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8001336B2 (en) * 2007-03-02 2011-08-16 International Business Machines Corporation Deterministic memory management in a computing environment
US10162500B2 (en) * 2016-08-24 2018-12-25 Microsoft Technology Licensing, Llc Dynamically render large dataset in client application
CN110928737B (zh) * 2018-09-19 2021-05-18 华为技术有限公司 监控样本进程的内存访问行为的方法和装置
CN109800020B (zh) * 2019-02-02 2023-02-10 北京字节跳动网络技术有限公司 一种程序开发的代码自动调整方法、装置、设备和介质
CN110113407B (zh) * 2019-04-30 2021-08-17 上海连尚网络科技有限公司 小程序状态同步方法、设备和计算机存储介质
CN111061652B (zh) * 2019-12-18 2021-12-31 中山大学 一种基于mpi-io中间件的非易失内存管理方法与***

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10699368B1 (en) * 2017-08-30 2020-06-30 Apple Inc. Memory allocation techniques for graphics shader
CN109471671A (zh) * 2017-09-06 2019-03-15 武汉斗鱼网络科技有限公司 一种程序冷启动方法和***
CN109740085A (zh) * 2019-01-10 2019-05-10 北京字节跳动网络技术有限公司 一种页面内容的展示方法、装置、设备及存储介质
CN109947504A (zh) * 2019-03-29 2019-06-28 上海连尚网络科技有限公司 一种在宿主程序中执行寄宿程序的方法与设备
CN112650692A (zh) * 2019-10-12 2021-04-13 北京华为数字技术有限公司 堆内存分配方法、装置及存储介质
CN110888740A (zh) * 2019-11-22 2020-03-17 腾讯科技(深圳)有限公司 小程序的增量内存确定方法、装置、设备及存储介质
CN111475246A (zh) * 2020-04-10 2020-07-31 腾讯科技(深圳)有限公司 小程序页面显示方法、装置、终端和存储介质
CN112214329A (zh) * 2020-11-04 2021-01-12 腾讯科技(深圳)有限公司 内存管理方法、装置、设备及计算机可读存储介质
CN112331235A (zh) * 2021-01-04 2021-02-05 腾讯科技(深圳)有限公司 多媒体内容的编辑控制方法、装置、电子设备和存储介质
CN112861057A (zh) * 2021-02-10 2021-05-28 北京百度网讯科技有限公司 基于小程序的页面渲染方法、装置、设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Implementation of Elementary Chinese Language Learning Application in WeChat Mini Programs;Xijie Wang 等;《2019 IEEE 4th International Conference on Big Data Analytics (ICBDA)》;20190513;第394-398页 *
基于微信小程序的气象服务***;陆卫荣 等;《电脑编程技巧与维护》;20190630;第74-77页 *

Also Published As

Publication number Publication date
CN113791988A (zh) 2021-12-14

Similar Documents

Publication Publication Date Title
US9773069B2 (en) Pre-fetching of network page content in a browser application
US10474693B2 (en) Resolving conflicts within saved state data
WO2017166447A1 (zh) 内核模块加载方法和装置
US9672022B2 (en) Applications including multiple experience modules
US11579902B2 (en) User interface rendering performance
EP2852900B1 (en) Page phase time
US8682964B1 (en) Progressively loading network content
CN104268229B (zh) 一种基于多进程浏览器的资源获得方法及装置
CN106791953A (zh) 多播放器控制方法、服务器及客户端
WO2013130328A1 (en) Persistent storage of profile data for script compilation
CN110175306A (zh) 一种广告信息的处理方法及装置
US20090132359A1 (en) Advertisement-Controlled Web Page Customization
CN111581553A (zh) 网络图像的展示方法、***、电子设备和存储介质
CN111597102A (zh) 一种页面性能的测试方法、终端及存储介质
CN113791988B (zh) 一种降低小程序包体积的渲染方法、装置及存储介质
CN110188297B (zh) 资源信息展示方法、计算设备及计算机存储介质
CN106844656A (zh) 一种页面适配方法及***
CN116149778A (zh) 界面显示方法、终端设备及存储介质
CN109857966A (zh) 一种浏览器动态加载网页资源的优化方法及浏览器
CN114003421B (zh) 虚拟机超时机制测试方法、***、终端及存储介质
CN115186207A (zh) 加载页面资源的方法及装置、电子设备
WO2016183795A1 (en) Method, apparatus for loading a resource in a web page on a device
US20170032552A1 (en) Implementing out of order access to reversal operations in images
US9917788B2 (en) Speculative generation of network page components
US11375445B2 (en) Technologies for detecting and analyzing user interaction tests for network-accessible content

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant