CN107368560B - 移动应用的页面实现方法和装置、计算机可读存储介质 - Google Patents
移动应用的页面实现方法和装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN107368560B CN107368560B CN201710552481.0A CN201710552481A CN107368560B CN 107368560 B CN107368560 B CN 107368560B CN 201710552481 A CN201710552481 A CN 201710552481A CN 107368560 B CN107368560 B CN 107368560B
- Authority
- CN
- China
- Prior art keywords
- data
- page
- kernel
- mobile application
- triggered
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
Abstract
本发明揭示了一种移动应用的页面实现方法和装置、计算机存储介质。所述方法由移动应用中与原生环境耦合的中间层执行,所述方法包括:接收移动应用相关的页面触发事件,页面触发事件使得移动应用执行内核的初始化逻辑;在初始化逻辑的执行中,通过原生环境并行进行服务器中页面触发事件所对应数据的拉取;读取被拉取的数据至初始化逻辑被执行完成的内核,内核加载渲染数据,并为移动应用获得被触发的页面。在整个过程中内核的初始化和服务器中数据的拉取并行进行,不再使得内核初始化逻辑的执行过程成为一空等状态,从而能够极大节省移动应用中跳转进入页面所存在的耗时开销,达到提升页面加载速度的目的。
Description
技术领域
本发明涉及计算机应用技术领域,特别涉及一种移动应用的页面实现方法和装置、计算机可读存储介质。
背景技术
随着互联网应用技术的发展,可供终端运行的移动应用越来越多,使得终端能够通过移动应用与相应服务器之间的数据交互而实现配置的功能。
也就是说,在终端的诸多移动应用中,往往存在着需要向服务器请求数据的需要,从服务器下载到所需要数据之后,方能够实现其配置的功能。
例如,移动应用中跳转进入某一页面,进行此页面的显示中,首先需要从服务器下载到此页面相关的资源数据,进而移动应用的内核执行资源数据的加载和渲染,获得可供显示的页面。
移动应用之所以能够进行所需要数据的下载,是基于移动应用中已经完成初始化的内核实现的。具体现而言,用户点击页面入口后,需要进行一系列的初始化逻辑,等内核初始化完成之后,才开始发起资源请求。整个过程串行执行,因此将使得移动终端中页面的进入存在着非常大的初始化耗时,初始化耗时和下载数据所需要耗费的时长便构成了移动应用中页面实现所需要的总耗时。
由此可知,移动应用中跳转进入页面存在着较大的耗时开销,亟待节省移动应用中跳转进入页面所存在的耗时开销。
发明内容
为了解决相关技术的移动应用中跳转进入页面所存在的耗时开销较大的技术问题,本发明提供了一种移动应用的页面实现方法和装置、计算机存储介质。
一种移动应用的页面实现方法,所述方法由移动应用中与原生环境耦合的中间层执行,所述方法包括:
接收所述移动应用相关的页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,通过所述原生环境并行进行服务器中所述页面触发事件所对应数据的拉取;
读取被拉取的所述数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面。
一种移动应用的页面实现方法,所述移动应用的中间层与原生环境耦合,所述方法包括:
所述移动应用的中间层接收页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,所述中间层向自身耦合的原生环境发起所述页面触发事件对应数据的拉取请求;
所述原生环境捕捉所述页面触发事件对应数据的拉取请求,处理所述页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取;
所述中间层读取被所述原生环境拉取的数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并最终为所述移动应用获得被触发的页面。
一种移动应用的页面实现装置,所述装置用于实现移动应用中与原生环境耦合的中间层,所述装置包括:
接收模块,用于接收所述移动应用相关的页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
并行拉取模块,用于在所述初始化逻辑的执行中,通过所述原生环境并行进行服务器中所述页面触发事件所对应数据的拉取;
读取模块,用于读取被拉取的所述数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面。
一种移动应用的页面实现装置,所述装置包括移动应用的中间层以及与所述中间层耦合的原生环境;
所述中间层用于接收页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,所述中间层向自身耦合的原生环境发起所述页面触发事件对应数据的拉取请求;
所述原生环境用于捕捉所述页面触发事件对应数据的拉取请求,处理所述页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取;
所述中间层还用于读取被所述原生环境拉取的数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面。
一种移动应用的页面实现装置,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如上所述的移动应用的页面实现方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的移动应用的页面实现方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
移动应用的实现中,中间层与原生环境相耦合,为在移动应用中实现所触发的页面,中间层接收移动应用相关的页面触发事件之后,页面触发事件将使得移动应用执行内核的初始化逻辑,在初始化逻辑的执行中,中间层通过自身耦合的原生环境并行进行服务器中页面触发事件所对应数据的拉取,随着此数据拉取的进行,将读取被拉取的数据至初始化逻辑被执行完成的内核,内核将加载渲染此数据,进而为移动应用获得被触发的页面,在整个过程中,内核的初始化和服务器中数据的拉取是并行进行的,在执行内核初始化逻辑中还在中间层的作用下拉取数据,不再使得内核初始化逻辑的执行过程成为一空等状态,从而能够极大节省移动应用中跳转进入页面所存在的耗时开销,达到提升页面加载速度的目的。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一个示例性实施例示出的本发明所涉及的实施环境示意图;
图2是根据一示例性实施例示出的一种装置的框图;
图3是根据一示例性实施例示出的一种移动应用的页面实现方法的流程图;
图4是根据图3对应实施例示出的对步骤330的细节进行描述的框图;
图5是根据一示例性实施例对根据被触发页面缓存的所有数据进行页面再次触发的增量更新,通过增量更新获得移动应用中被再次触发的页面步骤的细节进行描述的流程图;
图6是根据一示例性实施例示出的一种移动应用的页面实现方法的流程图;
图7是根据一示例性实施例示出的页面被触发后的应用示意图;
图8是根据图7对应实施例示出的中间层拉取数据交给内核的实现示意图;
图9是根据图7对应的实施例示出的即时通信工具中实现页面的应用示意图;
图10是根据一示例性实施例示出的即时通信工具的外网数据统计图;
图11是根据一示例性实施例示出的一种移动应用的页面实现装置的框图;
图12是根据图11对应实施例示出的对并行拉取模块的细节进行描述的框图;
图13是根据一示例性实施例示出的移动应用的实现以及应用示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一个示例性实施例示出的本发明所涉及的实施环境示意图。本发明所涉及的实施环境,至少包括用户所使用的终端110以及服务器130。终端110可以是智能手机、平板电脑等便携移动终端。
终端110和服务器130二者之间通过互联网实现数据交互。移动应用被部署于终端110中,并在用户的操控下实现移动应用的运行以及移动应用中页面之间的跳转。
无论是移动应用的运行,还是移动页面中页面之间的跳转,都获得一页面,并显示于移动应用中。获得并显示此页面的数据是终端110通过自身与服务器之间的数据交互而得到的。
图2是根据一示例性实施例示出的一种装置的框图。例如,装置200是图1所示实施环境的终端。
参照图2,装置200可以包括以下一个或多个组件:处理组件202,存储器204,电源组件206,多媒体组件208,音频组件210,传感器组件214以及通信组件216。
处理组件202通常控制装置200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作以及记录操作相关联的操作等。处理组件202可以包括一个或多个处理器218来执行指令,以完成下述的方法的全部或部分步骤。此外,处理组件202可以包括一个或多个模块,便于处理组件202和其他组件之间的交互。例如,处理组件202可以包括多媒体模块,以方便多媒体组件208和处理组件202之间的交互。
存储器204被配置为存储各种类型的数据以支持在装置200的操作。这些数据的示例包括用于在装置200上操作的任何应用程序或方法的指令。存储器204可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static RandomAccess Memory,简称SRAM),电可擦除可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储器204中还存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器218执行,以完成下述图2、图3、图4、图5和图6任一所示方法中的全部或者部分步骤。
电源组件206为装置200的各种组件提供电力。电源组件206可以包括电源管理系统,一个或多个电源,及其他与为装置200生成、管理和分配电力相关联的组件。
多媒体组件208包括在所述装置200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,简称LCD)和触摸面板。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。屏幕还可以包括有机电致发光显示器(Organic Light Emitting Display,简称OLED)。
音频组件210被配置为输出和/或输入音频信号。例如,音频组件210包括一个麦克风(Microphone,简称MIC),当装置200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器204或经由通信组件216发送。在一些实施例中,音频组件210还包括一个扬声器,用于输出音频信号。
传感器组件214包括一个或多个传感器,用于为装置200提供各个方面的状态评估。例如,传感器组件214可以检测到装置200的打开/关闭状态,组件的相对定位,传感器组件214还可以检测装置200或装置200一个组件的位置改变以及装置200的温度变化。在一些实施例中,该传感器组件214还可以包括磁传感器,压力传感器或温度传感器。
通信组件216被配置为便于装置200和其他设备之间有线或无线方式的通信。装置200可以接入基于通信标准的无线网络,如WiFi(WIreless-Fidelity,无线保真)。在一个示例性实施例中,通信组件216经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件216还包括近场通信(Near FieldCommunication,简称NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RadioFrequency Identification,简称RFID)技术,红外数据协会(Infrared DataAssociation,简称IrDA)技术,超宽带(Ultra Wideband,简称UWB)技术,蓝牙技术和其他技术来实现。
在示例性实施例中,装置200可以被一个或多个应用专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、数字信号处理器、数字信号处理设备、可编程逻辑器件、现场可编程门阵列、控制器、微控制器、微处理器或其他电子元件实现,用于执行下述方法。
图3是根据一示例性实施例示出的一种移动应用的页面实现方法的流程图。该移动应用的页面实现方法适用于图1所示实施环境的终端,该终端在一个示例性实施例中可以是图2所示的装置。如图3所示,该移动应用的页面实现方法,可以由移动应用中与原生环境耦合的中间层执行,可以包括以下步骤。
在步骤310中,接收移动应用相关的页面触发事件,页面触发事件使得移动应用执行内核的初始化逻辑。
其中,移动应用即为是Hybrid应用(混合模式移动应用),是结合了网页应用和原生应用所形成的。因此,移动应用的实现中,本地框架层,即native层为其提供了宿主环境,即原生环境,中间层作为移动应用的框架,其是利用native层的能力而实现的Hydrid框架,进而实现移动应用中的前端页面。
移动应用中,所指的中间层与原生环境之间的耦合,是指中间层和原生环境的输入和输出之间存在紧密配合与相互作用关系。通过中间层与原生环境之间的耦合即可实现移动应用中前端页面的加载显示。
具体的,随着用户在终端对移动应用的触发,而使得中间层接收到移动应用所相关的页面触发事件。用户在终端中对移动应用图标的触发,或者移动应用中页面入口的触发,都将随之产生移动应用相关的触发事件。
例如,移动应用随着其业务的部署,往往配置了多种页面入口,以便于用通过相应页面入口的触发而使得移动应用中的页面跳转至接入业务的页面,此页面由于是网页页面的形式,因此,触发页面入口便会在移动应用中产生页面触发事件,随着页面触发事件而初始化浏览器内核,进而实现移动页面中所触发业务的页面加载显示。
页面触发事件用于指示移动应用所相关的某一页面的被触发,可以理解的,此页面必将是移动应用所跳转至的页面,例如,移动应用运行时跳转进入的首页面。
页面触发事件指示移动应用中被触发并跳转至的页面,除此之外,还指示了移动应用的运行,此时对于移动应用而言,将响应此页面触发事件而执行内核的初始化逻辑。
在此应当说明的是,移动应用的内核将为其网页应用的功能实现而提供支持,因此,所指的内核在一个示例性实施例中可以是浏览器内核。
在步骤330中,在初始化逻辑的执行中,通过原生环境并行进行服务器中页面触发事件所对应数据的拉取。
其中,在移动应用中内核初始化逻辑的执行中,中间层将通过原生环境并发进行数据的拉取,为页面触发事件而从服务器拉取所需要的数据,所拉取的数据用于传送给内核,以实现页面触发事件所指示页面的加载和渲染。
可以理解的,移动应用中存在着一系列的页面,通过页面之间的跳转而实现移动应用中部署的业务。该页面即为网页页面,因此需要从相应服务器拉取相应数据方可执行加载和渲染。
移动应用的内核初始化时,在中间层的控制下,通过原生环境来并发进行数据的拉取。由于页面触发事件所对应数据的拉取是持续进行的,从服务器而拉取数据的全过程实质是一个网络数据流的拉取过程。
在步骤350中,读取被拉取的数据至初始化被执行完成的内核中,内核加载渲染数据,并为移动应用获得被触发的页面。
其中,随着数据拉取的持续进行,在内核初始化被执行完成时,往往拉取了加载渲染页面所需要的部分或者全部数据。在仅仅拉取到加载渲染页面所需要的部分数据时,先将拉取得到的数据传送至内核,触发内核先进行此部分数据的加载和渲染,在此部分数据的加载和渲染中,仍然进行着其它数据的拉取,以此类推,直至完成所有数据的加载和渲染,获得被触发的页面。
如果在内核初始化被执行完成时,如果已拉取了加载渲染页面所需要的全部数据,则立即由已经完成初始化的内核执行加载和渲染即可快速实现移动应用中被触发的页面。
由此,在中间层的作用下,使得页面触发事件所发起的数据拉取过程覆盖于内核加载过程中,或者与内核加载过程重叠,进而通过并行的方式弱化了内核的初始化耗时,让页面加载总耗时更小,使得移动应用即便采用了网页应用和原生应用的混合模式,也以能够更加接近原生应用的效果,从而在由网页应用的方式提高开发效率,实现跨平台和低成本等诸多优势的同时,也由于更加接入原生应用的效果而提升了用户体验和用户留存率。
通过如上所述的示例性实施例,在移动应用使用H5页面构建场景时,能够快速完成H5(HTML5)页面的实现,使得H5页面的应用不再受限于所对应的较大数据量,任何在终端实现的H5页面通过如上所述的示例性实施例都可快速提升页面加载速度,降低自身的接入成本。
如上所述的示例性实施例实质上是实现了一个轻量级且高性能的Hybrid框架,即所指的中间层即为一个Hybrid框架,从而使得应用此Hybrid框架实现的移动应用,即Hybrid应用能够在此Hybrid框架的作用下既能够动态实现页面的加载,又得以节省耗时。
任一Hybrid应用都可能通过此Hybrid框架实现,进而在此Hybrid框架上能够高效实现业务开发,方便Hybrid应用中接入各种业务,各种业务的页面也能够获得快速加载。
图4是根据图3对应实施例示出的对步骤330的细节进行描述的框图。该步骤330,如图4所示,可以包括以下步骤。
在步骤331中,在初始化逻辑的执行中,并行调用原生环境的原生传输通道向服务器请求页面触发事件对应的数据,使原生环境在服务器的响应下持续进行数据的接收。
其中,初始化逻辑的执行用于实现移动应用中内核的初始化。移动应用中内核的初始化占据着一固定的耗时,现有的移动应用中,将是等待初始化逻辑执行完毕之后串行执行服务器中数据的拉取以及加载渲染过程,换而言之,多个过程将被串行执行,例如,在等待初始化逻辑执行完毕的过程中,对于终端中后续用于实现与服务器之间通信的网络模块,其是处于空等状态的,例如,在一终端的Android平台中对某即时通信工具而言,其初始化耗时均值在600毫秒以上,因此,将存在着较长时间的空等。
而本示例性实施例中,对于移动应用,一方面,其在执行内核的初始化逻辑,另一方面,也在并行调用原生环境的原生传输通道向服务器请求页面触发事件对应的数据,而不再通过移动应用的内核来请求数据,以从服务器拉取数据。
由此,一方面得以使得数据的拉取过程能够不依赖于移动应用的内核,另一方面,由于原生环境封装了终端本地所具备的原生能力,因此,调用原生传输通道而请求进行的数据拉取将增强了移动应用所具备的性能。
在移动应用进行自身内核的初始化中,中间层并发向调用原生环境所封装的接口,进而实现原生传输通道的调用,以发起页面触发事件所对应数据的持续接收,直至获得被触发页面的所有数据。
在步骤333中,拦截接收的数据,并存入内存形成被触发页面所对应的内存流。
其中,在原生环境通过其原生传输通道而持续进行的数据接收中,对于所持续接收到的数据,由于此数据将被用于实现页面的加载和渲染,因此,往往会被传送至移动应用的内核。
此时,中间层将对此予以拦截,使得接收到的数据不会被传送至正在执行初始化的内核,而是随着数据的持续接收而将持续接收到的数据持续存入内存,形成被触发页面所对应的内存流。
至此,可以看到,对于被触发页面而言,用于实现其加载渲染的数据包括两大部分,一为内存流,二则是还未到达本地的网络数据流,例如,仍然存储于服务器中还未被下载的数据,以及传输中的数据。
通过如上所述述的示例性实施例,将在中间层的作用下保证其与原生环境的紧密配合,并适配于当前正在进行初始化的内核,进而既可有序而高效的实现被触页面数据的提早请求和接收,又能够保证后续加载和渲染的有序性。
通过此示例性实施例,将得以保证了在内核完成初始化之前,能够持续进行数据的接收,在完成初始化之后即可对接收到的数据执行加载和渲染,在此过程中,如果并未完成数据的接收,则数据的接收仍在持续进行着,至此,即可最大限度的保证了页面实现的高效性。
在一个示例性实施例中,图3对应实施例所示的步骤350包括:为被触发页面在对应内存流中持续进行数据读取,持续读取的数据被传送至初始化逻辑被执行完成的内核,触发内核加载渲染数据。
其中,被触发页面即为页面触发事件所指示跳转进入的页面。如前所述的,此页面为网页页面,在一个示例性实施例中,被触发页面为网页页面中的H5页面。
可以理解的,网页页面在终端的实现,需要由服务器获得所对应的数据。这些数据将描述了页面内容以及页面样式,因此,在获得这些数据之后便可以触发完成初始化而正常工作的内核加载渲染。
在图4所对应实施例中,可以知道,在执行初始化逻辑的过程中,所持续接收到的数据被存入内存形成内存流。此内存流是指持续存入的数据流。
在此基础上,对于步骤350的执行,将为被触发页面进行数据的逐步加载和渲染。具体而言,完成初始化逻辑的内核逐步读取内存流所携带的数据,以对读取的数据执行加载和渲染,直至所有数据被读取完成。
通过此示例性实施例,使得执行初始化逻辑的内核能够立即执行数据的加载和渲染,进而能够保证处理的高效性。
进一步的,在另一个示例性实施例中,步骤350还包括:如果被触发页面所对应的内存流被读取完毕,且原生环境还在持续进行数据的接收,则相应读取持续接收的数据至初始化逻辑被执行完成的内核,触发内核继续加载渲染。
其中,如前所述的,在内核的初始化逻辑被执行完毕之后,中间层便读取被触发页面所对应内存流中的数据,并传送至完成初始化的内核,以便于内核通过持续读取和传送的数据而逐步完成加载和渲染。
一方面,在内核的初始化逻辑被执行完毕之前,被触发页面的所有数据都以从服务器获得并存入形成内存流,此时被触发页面所对应的内存流被读取完毕时,中间层便完成了被触发页面的所有数据向内核的传送,进而在内核的作用下获得被触发页面。
另一方面,在内核的初始化逻辑被执行完毕时,被触发页面的数据并未从服务器下载完毕,原生环境还在持续进行着数据的接收,即仍然存在着未被下载的网络数据流。此时,中间层将直接读取原生环境所接收的数据,并传送至内核,以便于内核在完成了内存流的加载和渲染之后,继续进行新下载数据的加载和渲染,进而完成所有数据的加载和渲染。
由此,在中间层的作用下,内存流和网络数据流是被连续读取而传送至内核的,因此构建了内存流和网络数据流的桥接流,完成初始化逻辑的内核无需等待,在所传入桥接流的作用下,边加载边渲染,此过程对于内核而言是透明的,内核并不需要对此进行关注,持续传入的桥接流保证了边加载边渲染的实现,页面的获得和显示更快。
在另一个示例性实施例中,图3对应实施例的步骤350之后,该移动应用的页面实现方法还包括:缓存被触发页面的所有数据。
其中,被触发页面的所有数据,将用于完成被触发数据的加载和渲染。中间层从服务器完成了被触发页面所有数据的拉取之后,为被触发页面进行所有数据的缓存,以使得后续再次跳转进入这一被触发页面时,能够借助于缓存的所有数据快速实现这一被触发页面的跳转进入,进一步提升页面实现的速度。
进一步的,该移动应用的页面实现方法还包括:根据被触发页面缓存的所有数据进行页面再次触发的增量更新,通过增量更新获得移动应用中被再次触发的页面。
其中,区别于移动应用运行期间被触发页面的首次跳转进入,后续再次触发而进行的页面跳转中,本地存在着为此被触发页面而相应缓存的所有数据,对于被触发页面的再次加载和渲染而言,缓存的所有数据是作为被触发页面的静态资源存在。
在现有的技术实现中,常常是通过提前把页面静态资源拉取到本地,从而节省从网络加载资源的耗时开销。例如,移动应用在登录阶段提前把页面的静态资源从服务器下载到本地缓存,内核需要加载页面资源时,直接从本地读取已经提前下载好的页面静态资源,而不需要通过网络发起请求。
但是,这样的现有技术实现存在着诸多问题,具体而言包括:(1)由于需要预先将页面静态资源提前打包好,发布至服务器,管理成本高;(2)由于会将移动应用中所有页面的页面静态资源都拉取到本地,存在着即便用户没有访问某一页面也进行了此页面的页面静态资源拉取,存在着流量浪费的缺陷;(3)仅能够适用于静态直出页面,无法满足千人千面的动态直出页面。
而通过本示例性实施例,相对于再次触发跳转进入的页面,虽然为其缓存了所有数据,并使用缓存的数据进行加载和渲染,但是基于缓存的所有数据进行了增量更新,以获得适应于当前实际的数据,再进行加载和渲染。
由此,一方面避免了高额管理成本和不必要的流量消耗,另一方面也能够适用于动态直出页面,兼容静态直出页面和动态直出页面,适应于页面内容的动态变化,在提升速度的同时,也保证了页面内容的准确性。
进一步的,图5是根据一示例性实施例对根据被触发页面缓存的所有数据进行页面再次触发的增量更新,通过增量更新获得移动应用中被再次触发的页面步骤的细节进行描述的流程图。该步骤,如图5所示,可以包括以下步骤。
在步骤401中,移动应用中页面被再次触发时,将缓存的所有数据读取至内核,并从缓存的所有数据中获得模板数据版本信息,被触发页面缓存的所有数据包括模板数据和被触发页面中内容可变化数据。
其中,在移动应用的运行中,每一页面的跳转进入都将伴随着用于实现此页面加载和渲染的所有数据缓存。因此,在移动应用运行的整个过程中,页面一旦被触发即有相应的数据被缓存,此页面被再次触发时在中间层的作用下首先将缓存的所有数据读取至内核,以保证内核快速加载和渲染页面。
在此过程中,中间层还将向服务器请求获取相对于读取至内核的所有数据发生变化而存在的增量数据,此增量数据的获取,是根据被再次触发的页面进行的。
具体而言,用于内核加载渲染以及缓存的所有数据中,存在着模板(template)数据和内容可变化数据。模板数据和内容可变化数据共同实现了页面的内容和样式展示。模板数据对应于页面中不发生变化的内容。
在一个示例性实施例中,模板数据和内容可变化数据形成了页面所对应的脚本文件,为区别脚本文件中的模板数据和内容可变化数据,可以插入指定标签,以通过所插入的指定标签来识别哪些内容是变化的,哪些内容是不变的,除此之外,还可扩展协议头部,带上所适配中间层的版本号等,以便于携带更多适用于如上所述实施例的信息。
可以理解,内容可变化数据是依附于模板数据的,因此,为准确获得相对于内容可变化数据的增量数据,首先需要获得模板数据版本信息。
模板数据版本信息用于指示内容可变化数据所依附的模板数据。在一个示例性实施例中,模板数据版本信息可以是唯一标识模板数据的版本号,也可以是对模板数据的内容进行信息摘要运算而获得的信息摘要值,例如,md5值。
在步骤403中,根据模板数据版本信息从服务器获得相对于缓存的内容可变化数据发生变化的增量数据。
其中,中间层在获得模板数据版本信息并传送至服务器之后,服务器将根据模板数据版本信息而比对当前为被触发页面发布的模板数据,判断服务器当前为被触发页面发布的模板数据是否与终端缓存的模板数据相一致,如果为是,方能够执行对内容可变化数据的处理。
如果服务器当前被触发页面发布的模板数据与终端缓存的模板数据并不一致,则需要返回全新页面内容,以促使页面的重新加载。
在一个示例性实施例的具体实现中,模板数据一致的情况下,中间层将获得服务器根据模板数据版本信息而返回的内容可变化数据,将接收的内容可变化数据与缓存的数据进行差分(Diff)计算即可获得增量数据,最后提交到内核进行增量刷新即可。
在步骤405中,读取增量数据至内核,触发内核通过增量数据刷新已加载渲染得到的被触发页面。
通过如上所述的示例性实施例,能够让用户快速看到内容,并且由于仅更新页面有变化的内容,页面加载速度得到大大提升。
此外,与之相对于的,基于如上所述的示例性实施例,还提供了一种移动应用的页面实现方法,进而实现移动应用。
图6是根据一示例性实施例示出的一种移动应用的页面实现方法的流程图。该移动应用的中间层与原生环境耦合,该移动应用的页面实现方法,如图6所示,可以包括以下步骤。
在步骤510中,移动应用的中间层接收页面触发事件,页面触发事件使得所述移动应用执行内核的初始化逻辑。
其中,通过中间层与原生环境的耦合实现移动应用中部署的业务。随着移动应用的中间层接收到页面触发事件,将使得移动应用执行内核的初始化逻辑,并且在此初始化逻辑的执行中,如下述步骤530所描述的,中间层将向自身耦合的原生环境发起页面触发事件对应数据的拉取请求。
在步骤530中,在初始化逻辑的执行中,中间层向自身耦合的原生环境发起页面触发事件对应数据的拉取请求。
其中,在移动应用为自身所配置内核执行初始化逻辑的过程中,实现移动应用Hybrid框架的中间层将向自身耦合的原生环境发起请求,以请求原生环境为页面触发事件进行相应数据的拉取。
在步骤550中,原生环境捕捉页面触发事件对应数据的拉取请求,处理页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取。
其中,对于原生环境而言,其将捕捉得到中间层所发起的请求,此时便通过自身所具备的通信能力,即原生传输通道实现服务器中数据的拉取。在一个示例性实施例中,原生传输通道可以通过http(超文本传输协议,HyperText Transfer Protocol)、https(HyperText Transfer Protocol over Secure Socket Layer,以安全为目标的http通道)或者长连接等方式实现,在此不进行具体限定。
在内核初始化的过程中,原生环境并行地进行从服务器下载数据,以供完成初始化的内核加载和渲染。
在步骤570中,中间层读取被原生环境拉取的数据至初始化逻辑被执行完成的内核,内核加载渲染数据,并为移动应用获得被触发的页面。
通过此示例性实施例,在中间层和原生环境的配合下,实现了网络应用和原生应用混合的移动应用,进而即可在移动应用中内核的加载和渲染下实现页面的快速获得和显示。
通过此示例性实施例,将使得H5页面等对应了较大数据量以及需要耗费较多加载渲染时间的页面能够在接入移动应用之后获得速度提升,特别是页面首屏速度的提升,进而也由于性能的极大改善而提升了用户留存率的幅度。
以即时通信工具中H5页面的实现为例,结合具体应用场景,描述如上所述的方法。应当首先进行说明的是,在此示例性实施例中,即时通信工作是如前所述的移动应用。
可以理解,移动应用由于是Hybrid应用,应用内必然会出现使用到页面的场景,即必然会出现跳转至某一页面的情况。
即时通信工具中,接入了游戏分发中心、会员特权中心和个性装扮商场等业务,每一业务在即时通信工具中触发首先是通过跳转进入相应H5页面实现的。
对于即时通信工具中业务的接入,由于即时通信工具通过前述示例性实施例所实现的中间层是轻量级高性能的Hydrid框架,所以将使得即时通信工具中业务的接入成本低,能够跨平台的支持各种终端,对硬件无特殊要求,具备非常高的通用性。
图7是根据一示例性实施例示出的页面被触发后的应用示意图。即时通信工具中,其所接入的业务都有对应的页面入口,在对于首次点击,将需要执行内核的初始化逻辑,即图7所示的步骤1。
在初始化逻辑的执行中,如步骤2所示的,中间层发起原生传输通道进行资源加载,即执行前述所指的数据下载过程。
对于所下载的数据,中间层向原生环境发起拦截请求,进行到内核数据传输的拦截,如步骤3所示的,直至内核初始化完成之后,中间层才负责把拉取的数据交给内核进行加载和渲染。
由此可以在时序上看到,内核初始化和资源加载是并行执行的,即对于即时通信工具而言,其是执行了并行的加载方式,弱化初始化耗时,让页面加载总耗时更小,由此对于H5页面在即时通信工具的实现而言,速度得到提升,进而使得H5页面的应用也能够在性能上提供用户体验。
图8是根据图7对应实施例示出的中间层拉取数据交给内核的实现示意图。如图8中的步骤610所示的,子线程从服务器持续进行着数据的拉取,被拉取得到的数据将存入内存形成内存流,即如步骤620所示。
对于中间层将数据读取至内核而言,其所进行的数据读取将为内核实现了桥接流的传入。具体现而言,如步骤630至步骤640所示的,通过内存流和网络数据流构建得到桥接流,一方面使得内核在其初始化逻辑执行完毕之后能够立即进行加载和渲染,另一方面通过边加载边渲染而得以提高速度和效率。
图9是根据图7对应的实施例示出的即时通信工具中实现页面的应用示意图。具体而言,对于图7所示的步骤1,即内核执行初始化逻辑的过程中,将通过中间层并发启动子线程去拉取资源,因此,在图9所示的并发启动子线程步骤与初始化步骤同为步骤1,二者是并发执行的,并不存在先后时序。
对于中间层拉取资源,即拉取数据的步骤3,也将与加载缓存步骤并发执行,也就是说,数据的拉取是持续进行的,而对于所拉取到的数据,便是作为动态缓存而存在的,而在此首先要强调的是,数据是边拉取边加载的,即存在着并发执行的两个步骤3,下面再对此分情况说明。
在即时通信工具中某一业务的页面首次被触发时,持续进行数据的拉取,拉取得到的数据被拦截而形成动态缓存,即存入内存而形成内存流。此时,随着数据拉取的进行,也将并行进行缓存读取和加载。
而在即时通信工具中页面被再次触发时,中间层启动子线程后读取缓存,即执行步骤2,然后再并发执行加载缓存和拉取数据的步骤,在此所加载的缓存即为上一次被触发时缓存的所有数据,而通过数据拉取将达到获得增量数据的目的,进而如步骤4所示的,更新页面中变化元素,并相应更新缓存,如步骤5所示。
通过此示例性实施例,对于即时通信工具所接入的业务而言,能够大大提高H5页面的首屏加载速度,图10根据一示例性实施例示出的即时通信工具的外网数据统计图。
通过如上所述示例性实施例而实现的即时通信中H5页面,接入如上所述示例性实施例的页面首屏速度,提升幅度在52%以上,用户留存率提升幅度在4.6%以上。
如上所述的示例性实施例,对于移动应用和其所配置的内核而言,都是透明的,因此,此示例性实施例在应用中的接入实现并不需要额外的耗费开发成本,并且也使得H5页面的体验更佳。
下述为本发明装置实施例,可以用于执行本发明上述移动应用的页面实现方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明移动应用的页面实现方法实施例。
图11是根据一示例性实施例示出的一种移动应用的页面实现装置的框图。该移动应用的页面实现装置,如图11所示,可以包括但不限于:接收模块710、并行拉取模块730和读取模块750。
接收模块710,用于接收移动应用相关的页面触发事件,页面触发事件使得移动应用执行内核的初始化逻辑。
并行拉取模块730,用于在初始化逻辑的执行中,通过原生环境并行进行服务器中页面触发事件所对应数据的拉取。
读取模块750,用于读取被拉取的数据至初始化逻辑被执行完成的内核,内核加载渲染所述数据,并为移动应用获得被触发的页面。
图12是根据图11对应实施例示出的对并行拉取模块的细节进行描述的框图。该并行拉取模块730,如图12所示,可以包括但不限于:并行调用单元731和数据拦截单元733。
并行调用单元731,用于在初始化逻辑的执行中,并行调用原生环境的原生传输通道向服务器请求页面触发事件对应的数据,使原生环境在服务器的响应下持续进行数据的接收。
数据拦截单元733,用于拦截接收的数据,并存入内存形成被触发页面所对应的内存流。
在一个示例性实施例中,读取模块750用于为被触发页面在对应内存流中持续进行数据读取,持续读取的数据被传送至初始化逻辑被执行完成的内核,触发内核加载渲染数据。
进一步的,读取模块750进一步用于如果被触发页面所对应的内存流被读取完毕,且原生环境还在持续进行数据的接收,则相应读取持续接收的数据至初始化逻辑被执行完成的内核,触发内核继续加载渲染。
图13是根据一示例性实施例示出的移动应用的实现以及应用示意图。一种种移动应用的页面实现装置,如图13所示,包括中间层810以及与中间层810耦合的原生环境830。
中间层810用于接收页面触发事件,页面触发事件使得移动应用执行内核的初始化逻辑。
在初始化逻辑的执行中,中间层810向自身耦合的原生环境830发起页面触发事件对应数据的拉取请求。
原生环境830用于捕捉所述页面触发事件对应数据的拉取请求,处理页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取。
中间层810还用于读取被原生环境拉取的数据至初始化逻辑被执行完成的内核,内核加载渲染数据,并为移动应用获得被触发的页面。
在用户向移动应用发起页面触发事件之后,中间层810将在移动应用的内核初始化中发起原生环境830与服务器进行数据交互,进而实现内核初始化与数据拉取的并发执行。
可选的,本发明还提供一种移动应用的页面实现装置,执行图3、图4、图5和图6任一所示的移动应用的页面实现方法的全部或者部分步骤。所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行:
接收所述移动应用相关的页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,通过所述原生环境并行进行服务器中所述页面触发事件所对应数据的拉取;
读取被拉取的所述数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介指例如包括指令的存储器204,上述指令可由装置200的处理器218执行以完成上述移动应用的页面实现方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (11)
1.一种移动应用的页面实现方法,其特征在于,所述方法由移动应用中与原生环境耦合的中间层执行,所述方法包括:
接收所述移动应用相关的页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,通过所述原生环境并行进行服务器中所述页面触发事件所对应数据的拉取;
所述在所述初始化逻辑的执行中,通过所述原生环境并行进行服务器中所述页面触发事件所对应数据的拉取,包括:
在所述初始化逻辑的执行中,并行调用所述原生环境的原生传输通道向所述服务器请求所述页面触发事件对应的数据,使所述原生环境在服务器的响应下持续进行所述数据的接收;
拦截接收的所述数据,并存入内存形成被触发页面所对应的内存流;
读取被拉取的所述数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面;
所述读取被拉取的所述数据至初始化逻辑被执行完成的内核,包括:
为所述被触发页面在对应内存流中持续进行数据读取,持续读取的所述数据被传送至初始化逻辑被执行完成的内核,触发所述内核加载渲染所述数据。
2.根据权利要求1所述的方法,其特征在于,所述读取被拉取的所述数据至初始化逻辑被执行完成的内核,还包括:
如果被触发页面所对应的内存流被读取完毕,且原生环境还在持续进行所述数据的接收,则相应读取持续接收的所述数据至初始化逻辑被执行完成的内核,触发所述内核继续加载渲染。
3.根据权利要求1所述的方法,其特征在于,所述读取被拉取的所述数据至初始化逻辑被执行完成的内核之后,所述方法还包括:
缓存所述被触发页面的所有数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
根据所述被触发页面缓存的所有数据进行所述页面再次触发的增量更新,通过所述增量更新获得所述移动应用中被再次触发的页面。
5.根据权利要求4所述的方法,其特征在于,所述根据所述被触发页面缓存的所有数据进行所述页面再次触发的增量更新,通过所述增量更新获得所述移动应用中被再次触发的页面,包括:
所述移动应用中页面被再次触发时,将缓存的所有数据读取至内核,并从所述缓存的所有数据中获得模板数据版本信息,所述被触发页面缓存的所有数据包括模板数据和所述被触发页面中内容可变化数据;
根据所述模板数据版本信息从服务器获得相对于缓存的内容可变化数据发生变化的增量数据;
读取所述增量数据至内核,触发所述内核通过所述增量数据刷新已加载渲染得到的被触发页面。
6.一种移动应用的页面实现方法,其特征在于,所述移动应用的中间层与原生环境耦合,所述方法包括:
所述移动应用的中间层接收页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,所述中间层向自身耦合的原生环境发起所述页面触发事件对应数据的拉取请求;
所述原生环境捕捉所述页面触发事件对应数据的拉取请求,处理所述页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取;
所述原生环境捕捉所述页面触发事件对应数据的拉取请求,处理所述页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取,包括:
在所述初始化逻辑的执行中,并行调用所述原生环境的原生传输通道向所述服务器请求所述页面触发事件对应的数据,使所述原生环境在服务器的响应下持续进行所述数据的接收;
拦截接收的所述数据,并存入内存形成被触发页面所对应的内存流;
所述中间层读取被所述原生环境拉取的数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面;
所述中间层读取被所述原生环境拉取的数据至初始化逻辑被执行完成的内核,包括:
为所述被触发页面在对应内存流中持续进行数据读取,持续读取的所述数据被传送至初始化逻辑被执行完成的内核,触发所述内核加载渲染所述数据。
7.一种移动应用的页面实现装置,其特征在于,所述装置用于实现移动应用中与原生环境耦合的中间层,所述装置包括:
接收模块,用于接收所述移动应用相关的页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
并行拉取模块,用于在所述初始化逻辑的执行中,通过所述原生环境并行进行服务器中所述页面触发事件所对应数据的拉取;
所述并行拉取模块包括:
并行调用单元,用于在所述初始化逻辑的执行中,并行调用所述原生环境的原生传输通道向所述服务器请求所述页面触发事件对应的数据,使所述原生环境在服务器的响应下持续进行所述数据的接收;
数据拦截单元,用于拦截接收的所述数据,并存入内存形成被触发页面所对应的内存流;
读取模块,用于读取被拉取的所述数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面;
所述读取模块用于为所述被触发页面在对应内存流中持续进行数据读取,持续读取的所述数据被传送至初始化逻辑被执行完成的内核,触发所述内核加载渲染所述数据。
8.根据权利要求7所述的装置,其特征在于,所述读取模块进一步用于如果被触发页面所对应的内存流被读取完毕,且原生环境还在持续进行所述数据的接收,则相应读取持续接收的所述数据至初始化逻辑被执行完成的内核,触发所述内核继续加载渲染。
9.一种移动应用的页面实现装置,其特征在于,所述装置包括移动应用的中间层以及与所述中间层耦合的原生环境;
所述中间层用于接收页面触发事件,所述页面触发事件使得所述移动应用执行内核的初始化逻辑;
在所述初始化逻辑的执行中,所述中间层向自身耦合的原生环境发起所述页面触发事件对应数据的拉取请求;
所述原生环境用于捕捉所述页面触发事件对应数据的拉取请求,处理所述页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取;
所述原生环境捕捉所述页面触发事件对应数据的拉取请求,处理所述页面触发事件对应数据的拉取请求而在内核初始化时从服务器并发进行数据的拉取,包括:
在所述初始化逻辑的执行中,并行调用所述原生环境的原生传输通道向所述服务器请求所述页面触发事件对应的数据,使所述原生环境在服务器的响应下持续进行所述数据的接收;
拦截接收的所述数据,并存入内存形成被触发页面所对应的内存流;
所述中间层还用于读取被所述原生环境拉取的数据至初始化逻辑被执行完成的内核,所述内核加载渲染所述数据,并为所述移动应用获得被触发的页面;
所述中间层读取被所述原生环境拉取的数据至初始化逻辑被执行完成的内核,包括:
为所述被触发页面在对应内存流中持续进行数据读取,持续读取的所述数据被传送至初始化逻辑被执行完成的内核,触发所述内核加载渲染所述数据。
10.一种移动应用的页面实现装置,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据权利要求1至6中任一项所述的移动应用的页面实现方法。
11.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至6中任一项所述的移动应用的页面实现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552481.0A CN107368560B (zh) | 2017-07-07 | 2017-07-07 | 移动应用的页面实现方法和装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552481.0A CN107368560B (zh) | 2017-07-07 | 2017-07-07 | 移动应用的页面实现方法和装置、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107368560A CN107368560A (zh) | 2017-11-21 |
CN107368560B true CN107368560B (zh) | 2022-11-04 |
Family
ID=60305211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710552481.0A Active CN107368560B (zh) | 2017-07-07 | 2017-07-07 | 移动应用的页面实现方法和装置、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107368560B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109948085A (zh) * | 2017-11-23 | 2019-06-28 | 广州市动景计算机科技有限公司 | 浏览器内核初始化方法、装置、计算设备和存储介质 |
CN109857473A (zh) * | 2017-11-29 | 2019-06-07 | 北京京东尚科信息技术有限公司 | 一种页面数据的加载方法和装置 |
CN109840156B (zh) * | 2017-11-29 | 2023-04-25 | 腾讯科技(武汉)有限公司 | 一种数据缓存方法及其设备、存储介质、终端 |
CN108196964A (zh) * | 2017-12-29 | 2018-06-22 | 北京奇虎科技有限公司 | 一种将数据流模块化的方法和装置 |
CN108600331B (zh) * | 2018-04-02 | 2021-04-02 | 北京大米科技有限公司 | 交互界面呈现方法、客户端、终端及系统 |
CN110020323B (zh) * | 2018-07-27 | 2023-04-07 | 平安科技(深圳)有限公司 | 混合应用的页面切换方法、系统、计算机设备及存储介质 |
CN109743359B (zh) * | 2018-12-13 | 2022-10-25 | 平安普惠企业管理有限公司 | Hybrid通讯处理方法、装置、计算机设备及存储介质 |
CN111475220B (zh) * | 2019-01-23 | 2023-04-25 | 阿里巴巴集团控股有限公司 | 冷启动方法、装置、电子设备及计算机存储介质 |
CN109902255B (zh) * | 2019-02-27 | 2021-04-27 | 百度在线网络技术(北京)有限公司 | 页面混合浏览记录生成方法、装置、设备和存储介质 |
CN110175309B (zh) * | 2019-05-30 | 2022-01-28 | 四川长虹电器股份有限公司 | 移动应用混合开发的原生端资源池管理系统及方法 |
CN110727478B (zh) * | 2019-10-16 | 2021-11-16 | 腾讯科技(深圳)有限公司 | 一种基于混合模式渲染页面的方法、装置、设备及介质 |
CN111125602B (zh) * | 2019-12-25 | 2023-11-14 | 腾讯音乐娱乐科技(深圳)有限公司 | 页面构建方法、装置、设备和存储介质 |
CN112015432A (zh) * | 2020-08-24 | 2020-12-01 | 云账户技术(天津)有限公司 | 一种静态项目部署方法及装置 |
CN112052064B (zh) * | 2020-09-28 | 2024-04-09 | 深圳前海微众银行股份有限公司 | 小程序页面跳转方法、装置、设备与计算机可读存储介质 |
CN114035865B (zh) * | 2021-11-11 | 2022-10-21 | 北京百度网讯科技有限公司 | 启动小程序的方法、装置、设备以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345405A (zh) * | 2013-06-09 | 2013-10-09 | 贝壳网际(北京)安全技术有限公司 | 应用程序的启动方法、装置和客户端 |
CN105095280A (zh) * | 2014-05-13 | 2015-11-25 | 腾讯科技(深圳)有限公司 | 一种浏览器缓存方法和装置 |
CN105786513A (zh) * | 2016-02-29 | 2016-07-20 | 四川长虹电器股份有限公司 | 基于Html5的混合移动应用开发方法 |
CN105930467A (zh) * | 2016-04-22 | 2016-09-07 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8341611B2 (en) * | 2007-04-11 | 2012-12-25 | Apple Inc. | Application interface on multiple processors |
US9349123B1 (en) * | 2012-10-04 | 2016-05-24 | Amazon Technologies, Inc. | Hybrid native networked application |
US9069375B2 (en) * | 2013-04-30 | 2015-06-30 | MobileDataForce, Inc. | Method and system for platform-independent application development |
-
2017
- 2017-07-07 CN CN201710552481.0A patent/CN107368560B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345405A (zh) * | 2013-06-09 | 2013-10-09 | 贝壳网际(北京)安全技术有限公司 | 应用程序的启动方法、装置和客户端 |
CN105095280A (zh) * | 2014-05-13 | 2015-11-25 | 腾讯科技(深圳)有限公司 | 一种浏览器缓存方法和装置 |
CN105786513A (zh) * | 2016-02-29 | 2016-07-20 | 四川长虹电器股份有限公司 | 基于Html5的混合移动应用开发方法 |
CN105930467A (zh) * | 2016-04-22 | 2016-09-07 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Non-Patent Citations (2)
Title |
---|
Optimization of the issues in the migration from Android Native to Hybrid Application: Case study of Student"s Portal application;Ahuja H;《International Conference on Advances in Computing》;20141231;全文 * |
混合移动应用开发模式的新策略;杜帅;《软件》;20151231;第36卷(第06期);第12-17页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107368560A (zh) | 2017-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107368560B (zh) | 移动应用的页面实现方法和装置、计算机可读存储介质 | |
CN109388453B (zh) | 应用页面的展示方法、装置、存储介质和电子设备 | |
CN109358936B (zh) | 信息处理方法、装置、存储介质、电子设备及系统 | |
US11706331B2 (en) | Information processing method and apparatus, storage medium, and electronic device | |
WO2019149207A1 (zh) | 应用页面的显示方法、装置、存储介质及电子设备 | |
CN109165050B (zh) | 程序的运行方法、装置、计算设备以及存储介质 | |
US10754633B2 (en) | Application installation package generation method and apparatus, and storage medium | |
CN110874217B (zh) | 快应用的界面显示方法、装置及存储介质 | |
CN110990075B (zh) | 快应用的启动方法、装置、设备及存储介质 | |
CN103914205B (zh) | 一种智能终端的文件缩略图展示方法和装置 | |
US9870239B2 (en) | Method and device for running application program | |
JP2023506936A (ja) | マルチ画面共働方法およびシステム、ならびに電子デバイス | |
CN111078325B (zh) | 应用程序运行方法、装置、电子设备及存储介质 | |
CN110865863B (zh) | 快应用的界面显示方法、装置及存储介质 | |
CN106612149B (zh) | 射频电路测试方法、装置、系统及移动终端 | |
WO2021057390A1 (zh) | 一种启动快应用的方法及相关装置 | |
CN110865864B (zh) | 快应用的界面显示方法、装置、设备及存储介质 | |
CN111008050B (zh) | 页面任务执行方法、装置、终端及存储介质 | |
CN108073610B (zh) | 实现网页页面加载的方法及装置 | |
CN109976872B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN107861666B (zh) | 桌面应用安装方法及装置 | |
CN111104183B (zh) | 应用程序运行方法、装置、电子设备及存储介质 | |
KR102170520B1 (ko) | 로딩 타임을 개선하는 전자 장치 및 방법 | |
CN110489679B (zh) | 一种浏览器内核的处理方法、装置及存储介质 | |
CN109213550B (zh) | 内嵌应用的交互实现方法、装置、设备和可读存储介质 |
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 |