CN105577813A - 一种web混合应用的更新方法和系统 - Google Patents

一种web混合应用的更新方法和系统 Download PDF

Info

Publication number
CN105577813A
CN105577813A CN201511032696.7A CN201511032696A CN105577813A CN 105577813 A CN105577813 A CN 105577813A CN 201511032696 A CN201511032696 A CN 201511032696A CN 105577813 A CN105577813 A CN 105577813A
Authority
CN
China
Prior art keywords
web
serviceworker
resource
mixing application
application
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.)
Granted
Application number
CN201511032696.7A
Other languages
English (en)
Other versions
CN105577813B (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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201511032696.7A priority Critical patent/CN105577813B/zh
Publication of CN105577813A publication Critical patent/CN105577813A/zh
Application granted granted Critical
Publication of CN105577813B publication Critical patent/CN105577813B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供了一种web混合应用的更新方法和系统,所述方法包括:开发web混合应用所需要的资源,并将所开发的资源存放在web服务器上;利用Service?Worker将所开发的资源打包,生成应用缓存文件,所述web混合应用缓存文件包括Service?Worker打包脚本和改变格式后的所述资源;利用Service?Worker客户端脚本替换所述Service?Worker打包脚本;将替换后的所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备中安装的所述web混合应用中的Service?Worker客户端脚本发出的更新请求,并将对应的更新资源传输至所述智能设备。

Description

一种web混合应用的更新方法和系统
技术领域
本发明涉及互联网领域,具体涉及一种web混合应用的更新方法和系统。
背景技术
现如今,智能设备越来越广泛地应用在生活的方方面面,智能设备例如台式电脑、笔记本电脑、手机、平板电脑等,其上安装的应用(App)可以分为原生应用、web应用、web混合应用。
原生应用是专门针对某一类智能设备而生的,它们通常是被直接安装到设备里。Web应用是需要用到网络的应用,它们利用智能设备上的浏览器(例如windows系统中的IE、iPhone中的Safari)来运行,而且它们不需要在设备上下载后安装。web混合应用是指介于原生应用和web应用之间的应用,是原生应用和Web应用的结合体,采用了原生应用的一部分、Web应用的一部分,所以必须在部分在设备上运行、部分在Web上运行。它虽然看上去是一个原生应用,但只有一个原生应用的框架,里面访问的是一个Web应用。web混合应用兼具原生应用良好用户交互体验的优势和web应用跨平台开发的优势,现如今,市场上一些主流移动应用都是基于web混合应用的方式开发的。
现有的web混合应用通常把HTML、CSS、JavaScript、资源文件和web运行时框架打包成系统原生应用的格式来发布,但是这种方式下web混合应用不能像在浏览器中运行一样实时更新。而JavaScript的脚本解析随着web混合应用的日益复杂也变得更加耗时影响用户体验。
为了使用web技术开发系统级应用,现有的方法通常是将应用UI和逻辑使用HTML、CSS、JavaScript开发好,然后把它们和web运行时环境的框架(比如Cordova、Crosswalk)打包在一起发布。这样打包的web混合应用可以跟原生应用一样访问系统级API。但是更新这样的web混合应用需要经过重新打包、发布、用户更新的流程。具体来说,图1所示为现有的web混合应用开发使用流程的示意图。如图1所示,开发人员在开发机10’上开发好HTML/CSS/JS以及资源文件以后,再通过Cordova等打包上传到应用商店20’,用户在智能设备中安装该web混合应用30’后,像其他应用一样使用,如果要提供在线更新功能,web混合应用30’需要在native层实现下载、更新以及失败回滚等功能,而且应用服务器40’和更新服务器50’也需要相应地调整。
发明内容
本发明实施例提供一种web混合应用的更新方法和系统,以解决现有技术存在的web混合应用不能像在浏览器中运行一样实时更新的问题。
在一实施例中,本发明提出一种web混合应用的更新方法,包括:
开发web混合应用所需要的资源,并将所开发的资源存放在web服务器上;
利用ServiceWorker将所开发的资源打包,生成应用缓存文件,所述web混合应用缓存文件包括ServiceWorker打包脚本和改变格式后的所述资源;
利用ServiceWorker客户端脚本替换所述ServiceWorker打包脚本;
将替换后的所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;
当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备中安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求,并将对应的更新资源传输至所述智能设备。
在一实施例中,所述利用ServiceWorker将所开发的资源打包,是利用ServiceWorker和WebRuntime打包和存储所述资源。
在一实施例中,所述资源包括HTML文件、CSS文件、JavaScript脚本文件、文字、图片至少一者。
在一实施例中,利用ServiceWorker将所开发的资源打包,生成应用缓存文件的步骤中,还包括:
将所述资源中的JavaScript脚本文件保存为二进制数据。
在一实施例中,所述web服务器在如下至少一种情形时接收更新请求:
所述ServiceWorker客户端脚本检测到所述web服务器上的替换后的所述web混合应用缓存文件具有更新;
所述的ServiceWorker客户端脚本检测到所述web混合应用到达使用者设定的更新周期,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测到使用者发出更新请求,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测所述智能设备处于未被使用的状态,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本。
本发明另一实施例还提出一种web混合应用的更新系统,包括:
资源存放模块,用于将web混合应用所需要的资源存放在web服务器上;
资源打包模块,用于利用ServiceWorker将所开发的资源打包,生成应用缓存文件,所述web混合应用缓存文件包括ServiceWorker打包脚本和改变格式后的所述资源;
脚本替换模块,用于利用ServiceWorker客户端脚本替换所述ServiceWorker打包脚本;
发布模块,用于将替换后的所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;
更新模块,当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备中安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求,并将对应的更新资源传输至所述智能设备。
在一实施例中,所述资源打包模块具体用于利用ServiceWorker和WebRuntime存储所述资源。
在一实施例中,所述资源包括HTML文件、CSS文件、JavaScript脚本文件、文字、图片至少一者。
在一实施例中,所述资源打包模块进一步用于将所述资源中的JavaScript脚本文件保存为二进制数据。
在一实施例中,所述更新模块在如下至少一种情形下接收更新请求:
所述ServiceWorker客户端脚本检测到所述web服务器上的替换后的所述web混合应用缓存文件具有更新;
所述的ServiceWorker客户端脚本检测到所述web混合应用到达使用者设定的更新周期,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测到使用者发出更新请求,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测所述智能设备处于未被使用的状态,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本。
本发明提出的web混合应用的更新方法和更新系统中,利用ServiceWorker技术为在线网页提供的可编程后台离线缓存的能力,使web混合应用能够实时更新,相比于传统的web混合应用,本发明提出的web混合应用的更新方法和更新系统能够实现web混合应用的更新资源被开发人员开发并上传至web服务器之后直接同步至使用者的智能设备,更新资源可以直接被智能设备读取使用,无需进行编译等步骤,节省了更新和启动时间,为web混合应用提供更好的用户体验。
附图说明
图1所示为现有的web混合应用开发使用流程的示意图。
图2所示为本发明一实施例的web混合应用的更新流程的示意图。
图3所示为打包的过程示意图。
图4所示为本发明一实施例的web混合应用的更新方法的流程图。
图5所示为本发明一实施例的web混合应用的更新系统的方框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
本发明的核心构思之一在于,将在线网页的离线缓存技术引入web混合应用打包中,利用ServiceWorker技术为在线网页提供的可编程后台离线缓存的能力,解决现有技术中web混合应用无法实时更新的问题,使web混合应用既能成为系统的原生级别应用,又能享有网页级别的实时更新,为web混合应用提供更好的用户体验。
图2所示为本发明一实施例的web混合应用的更新流程的示意图。如图2所示,开发人员在开发机10上开发好HTML/CSS/JS等资源文件之后,将它们上传至web服务器20,再通过工具以运行特定的ServiceWorker脚本的方法将web服务器20上的文件缓存打包,并发布到应用商店30。web混合应用40在运行时会根据设置从打包时对应的web服务器20上更新各类资源。具体更新方法和ServiceWorker标准一致,提供了完善的在线更新功能。
图3所示为将web服务器上的资源打包的过程示意图。如图3所示,打包时由WebRuntime通过特定的ServiceWorker打包脚本生成应用缓存,并用ServiceWorker客户端脚本替换ServiceWorker打包脚本,这样该web混合应用在安装后就能通过正常的ServiceWorker来完成资源更新。
图4所示为本发明一实施例的web混合应用的更新方法的流程图。如图4所示,本发明一实施例中,web混合应用的更新方法包括如下步骤:
步骤101,开发web混合应用所需要的资源,并将所开发的资源存放在web服务器上;
在这一步骤中,例如可以在开发机上搭建web服务器,由开发人员开发web混合应用所需要的各类资源,例如包括HTML/CSS/JavaScript等网页资源,以及文字、图片等资源文件,并将开发好的web混合应用所需要的各类资源上传到web服务器中。
步骤102,利用ServiceWorker将所开发的资源打包,生成应用缓存文件,所述应用缓存文件包括ServiceWorker打包脚本和改变格式后的资源;
在这一步骤中,运行特定的ServiceWorker脚本,在本实施例中例如为特定的ServiceWorker打包脚本,利用特定的ServiceWorker打包脚本和WebRuntime,将上一步骤中的各类资源打包生成web混合应用缓存文件,由于ServiceWorker能够将自身同时打包,因此,生成的web混合应用缓存文件包括上述的ServiceWorker打包脚本,以及上述的各类资源。在这一步骤中,由于使用特定的ServiceWorker打包脚本进行打包,相比于上一步骤,上述的各类资源的格式在这一步骤中有所变化。例如,各类资源的格式可以改为二进制。所生成的应用缓存文件存放在ServiceWorker的缓存中。
在这一步骤中,由于ServiceWorker可编程的特点,开发人员可以定制打包的方式。例如在一优选实施例中,WebRuntime可以保存编译过的JavaScript中间二进制数据,从而在后续应用中JavaScript不再需要被编译,节省了该web混合应用的启动时间,提高了启动速度。
步骤103,利用ServiceWorker客户端脚本替换所述ServiceWorker打包脚本;
由于上一步骤中,替换之前的ServiceWorker打包脚本并不能被后续的智能设备直接使用,因此需要将其替换成能够被智能设备直接使用的ServiceWorker客户端脚本。替换后所生成的修改后的web混合应用缓存文件为可以发布到应用商店的、被智能设备下载之后能够直接使用的web混合应用缓存文件。通过修改WebRuntime,实现将ServiceWorker客户端脚本替换所述ServiceWorker打包脚本,ServiceWorker客户端脚本可以直接被智能设备使用。
步骤104,将所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;
在这一步骤中,所述web混合应用缓存文件被上传至应用商店,例如APPstore或应用市场等,供智能设备(例如手机、台式电脑、笔记本电脑、平板电脑)下载使用。
步骤105,当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备中安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求,并传输更新资源至所述智能设备。
在这一步骤中,智能设备的使用者可以下载该web混合应用,并可以在下载后设置该web混合应用的更新周期或者的触发更新的方式。例如,使用者可以设置更新周期为1天,则每天的特定时间该web混合应用中的ServiceWorker客户端脚本发出更新请求,web服务器接收更新请求并发送更新后的web混合应用缓存文件至智能设备。或者,使用者可以设置更新周期为每次开启该web混合应用时,则每次开启该web混合应用,该web混合应用中的ServiceWorker客户端脚本发出更新请求,web服务器接收更新请求并发送更新后的web混合应用缓存文件至智能设备。或者,使用者可以设置更新周期为空闲状态下更新,该空闲状态例如为使用者并未使用所述智能设备,避免了占用使用者使用智能设备的时间以及占用使用智能设备时的内存。
另外,开发者在完成开发web混合应用所需要的资源后,可以将所开发的资源存放在web服务器上,当web混合应用中的ServiceWorker客户端脚本检测到存在上述更新的资源,则该web混合应用中的ServiceWorker客户端脚本发出更新请求,web服务器接收更新请求并发送更新后的web混合应用缓存文件至智能设备。另外,根据ServiceWorker标准,ServiceWorker客户端脚本也可以自动更新,从而自动改变资源的更新周期等。
在一优选实施例中,所述web服务器接收到所述智能设备中安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求具体为:所述智能设备的ServiceWorker客户端脚本检测到所述web服务器上具有更新的资源时,所述ServiceWorker客户端脚本发出更新请求。
优选地,ServiceWorker脚本可以使用渐进的更新方式,在新版本应用中所有必需资源都缓存好后再更新给用户。
综上所述,本发明提出的web混合应用的更新方法中,利用ServiceWorker技术为在线网页提供的可编程后台离线缓存的能力,使web混合应用能够实时更新,相比于传统的web混合应用,本发明提出的web混合应用的更新方法和更新系统能够实现web混合应用的更新资源被开发人员开发并上传至web服务器之后直接同步至使用者的智能设备,更新资源可以直接被智能设备读取使用,无需进行编译等步骤,节省了更新和启动时间,为web混合应用提供更好的用户体验。
另外,如上所述,作为本发明优选的技术方案,本发明还可以在生成应用缓存时,WebRuntime可以保存编译过的JavaScript中间二进制数据,从而提高该web混合应用的启动速度。
本发明另一实施例还提出一种web混合应用的更新系统,包括:
资源存放模块11,用于将web混合应用所需要的资源存放在web服务器上;
资源打包模块12,用于利用ServiceWorker将所开发的资源打包,生成应用缓存文件,所述web混合应用缓存文件包括ServiceWorker打包脚本和改变格式后的所述资源;
脚本替换模块13,用于利用ServiceWorker客户端脚本替换所述ServiceWorker打包脚本;
发布模块14,用于将替换后的所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;
更新模块15,当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备中安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求,并将对应的更新资源传输至所述智能设备。
在一优选实施例中,所述资源打包模块具体用于利用ServiceWorker和WebRuntime存储所述资源。
在一优选实施例中,所述资源包括HTML文件、CSS文件、JavaScript脚本文件、文字、图片至少一者。
在一优选实施例中,所述资源打包模块进一步用于将所述资源中的JavaScript脚本文件保存为二进制数据。
在一优选实施例中,,所述更新模块在如下至少一种情形下接收更新请求:
所述ServiceWorker客户端脚本检测到所述web服务器上的替换后的所述web混合应用缓存文件具有更新;
所述的ServiceWorker客户端脚本检测到所述web混合应用到达使用者设定的更新周期;
所述ServiceWorker客户端脚本检测到使用者发出更新请求;
所述ServiceWorker客户端脚本检测所述智能设备处于未被使用的状态。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
综上所述,本发明提出的web混合应用的更新系统中,利用ServiceWorker技术为在线网页提供的可编程后台离线缓存的能力,使web混合应用能够实时更新,相比于传统的web混合应用,本发明提出的web混合应用的更新方法和更新系统能够实现web混合应用的更新资源被开发人员开发并上传至web服务器之后直接同步至使用者的智能设备,更新资源可以直接被智能设备读取使用,无需进行编译等步骤,节省了更新和启动时间,为web混合应用提供更好的用户体验。
作为本发明优选的技术方案,本发明还可以在生成应用缓存时,WebRuntime可以保存编译过的JavaScript中间二进制数据,从而提高该web混合应用的启动速度。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitorymedia),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上对对本申请所提供的一种web混合应用的更新方法和更新系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种web混合应用的更新方法,其特征在于,包括:
开发web混合应用所需要的资源,并将所开发的资源存放在web服务器上;
利用ServiceWorker将所开发的资源打包,生成web混合应用缓存文件,所述web混合应用缓存文件包括ServiceWorker打包脚本和改变格式后的所述资源;
利用ServiceWorker客户端脚本替换所述ServiceWorker打包脚本;
将替换后的所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;
当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求,并将更新资源传输至所述智能设备。
2.如权利要求1所述的web混合应用的更新方法,其特征在于,所述利用ServiceWorker将所开发的资源打包,是利用ServiceWorker打包脚本和WebRuntime打包和存储所述资源。
3.如权利要求2所述的web混合应用的更新方法,其特征在于,所述资源包括HTML文件、CSS文件、JavaScript脚本文件、文字、图片至少一者。
4.如权利要求3所述的web混合应用的更新方法,其特征在于,利用ServiceWorker将所开发的资源打包,生成应用缓存文件的步骤中,还包括:
将所述资源中的JavaScript脚本文件保存为二进制数据。
5.如权利要求1所述的web混合应用的更新方法,其特征在于,所述web服务器在如下至少一种情形时接收更新请求:
所述ServiceWorker客户端脚本检测到所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述的ServiceWorker客户端脚本检测到所述web混合应用到达使用者设定的更新周期,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测到使用者发出更新请求,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测所述智能设备处于未被使用的状态,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本。
6.一种web混合应用的更新系统,其特征在于,包括:
资源存放模块,用于将web混合应用所需要的资源存放在web服务器上;
资源打包模块,用于利用ServiceWorker将所开发的资源打包,生成应用缓存文件,所述web混合应用缓存文件包括ServiceWorker打包脚本和改变格式后的所述资源;
脚本替换模块,用于利用ServiceWorker客户端脚本替换所述ServiceWorker打包脚本;
发布模块,用于将替换后的所述web混合应用缓存文件上传到应用商店,作为web混合应用发布;
更新模块,当下载到智能设备的所述web混合应用需要更新时,所述web服务器接收所述智能设备中安装的所述web混合应用中的ServiceWorker客户端脚本发出的更新请求,并将对应的更新资源传输至所述智能设备。
7.如权利要求6所述的web混合应用的更新系统,其特征在于,所述资源打包模块具体用于利用ServiceWorker和WebRuntime打包和存储所述资源。
8.如权利要求7所述的web混合应用的更新系统,其特征在于,所述资源包括HTML文件、CSS文件、JavaScript脚本文件、文字、图片至少一者。
9.如权利要求8所述的web混合应用的更新系统,其特征在于,所述资源打包模块进一步用于将所述资源中的JavaScript脚本文件保存为二进制数据。
10.如权利要求6所述的web混合应用的更新系统,其特征在于,所述更新模块在如下至少一种情形下接收更新请求:
所述ServiceWorker客户端脚本检测到所述web服务器上的替换后的所述web混合应用缓存文件具有更新;
所述的ServiceWorker客户端脚本检测到所述web混合应用到达使用者设定的更新周期,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测到使用者发出更新请求,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本;
所述ServiceWorker客户端脚本检测所述智能设备处于未被使用的状态,且所述web服务器上的替换后的所述web混合应用缓存文件具有更新版本。
CN201511032696.7A 2015-12-31 2015-12-31 一种web混合应用的更新方法和系统 Active CN105577813B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511032696.7A CN105577813B (zh) 2015-12-31 2015-12-31 一种web混合应用的更新方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511032696.7A CN105577813B (zh) 2015-12-31 2015-12-31 一种web混合应用的更新方法和系统

Publications (2)

Publication Number Publication Date
CN105577813A true CN105577813A (zh) 2016-05-11
CN105577813B CN105577813B (zh) 2018-08-14

Family

ID=55887457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511032696.7A Active CN105577813B (zh) 2015-12-31 2015-12-31 一种web混合应用的更新方法和系统

Country Status (1)

Country Link
CN (1) CN105577813B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020906A (zh) * 2016-05-31 2016-10-12 广东能龙教育股份有限公司 一种基于Cordova的客户端热更新方法
CN107220371A (zh) * 2017-06-14 2017-09-29 北京小米移动软件有限公司 页面显示方法、装置及存储介质
CN108287836A (zh) * 2017-01-09 2018-07-17 腾讯科技(深圳)有限公司 一种资源缓存方法及装置
CN108984201A (zh) * 2018-07-09 2018-12-11 深圳市思迪信息技术股份有限公司 移动平台版本智能在线升级方法及装置
CN109471648A (zh) * 2018-11-08 2019-03-15 网宿科技股份有限公司 屏幕布局数据处理方法、装置、电子设备及存储介质
CN110209964A (zh) * 2018-02-13 2019-09-06 阿里巴巴集团控股有限公司 一种页面显示方法、装置及设备
WO2020015162A1 (zh) * 2018-07-18 2020-01-23 平安科技(深圳)有限公司 混合应用的图片处理方法、装置、计算机设备及存储介质
CN113779458A (zh) * 2021-07-27 2021-12-10 北京房江湖科技有限公司 应用加速加载的方法及装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006559A1 (en) * 2007-06-27 2009-01-01 Bhogal Kulvir S Application Message Subscription Tracking In A High Speed, Low Latency Data Communications Environment
CN103092665A (zh) * 2013-03-01 2013-05-08 畅捷通信息技术股份有限公司 即时更新装置和即时更新方法
CN103473034A (zh) * 2012-06-06 2013-12-25 阿里巴巴集团控股有限公司 一种动态发布Web 服务的方法和装置
CN104657118A (zh) * 2013-11-18 2015-05-27 中国移动通信集团公司 Native+Web混合移动应用的实现方法及装置
CN105138376A (zh) * 2015-09-01 2015-12-09 北京皮尔布莱尼软件有限公司 混合模式应用、其网页资源升级方法、移动终端以及系统
US9304826B2 (en) * 2009-08-23 2016-04-05 Aspect Software Inc. System and method for improved dynamic allocation of application resources

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006559A1 (en) * 2007-06-27 2009-01-01 Bhogal Kulvir S Application Message Subscription Tracking In A High Speed, Low Latency Data Communications Environment
US9304826B2 (en) * 2009-08-23 2016-04-05 Aspect Software Inc. System and method for improved dynamic allocation of application resources
CN103473034A (zh) * 2012-06-06 2013-12-25 阿里巴巴集团控股有限公司 一种动态发布Web 服务的方法和装置
CN103092665A (zh) * 2013-03-01 2013-05-08 畅捷通信息技术股份有限公司 即时更新装置和即时更新方法
CN104657118A (zh) * 2013-11-18 2015-05-27 中国移动通信集团公司 Native+Web混合移动应用的实现方法及装置
CN105138376A (zh) * 2015-09-01 2015-12-09 北京皮尔布莱尼软件有限公司 混合模式应用、其网页资源升级方法、移动终端以及系统

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020906A (zh) * 2016-05-31 2016-10-12 广东能龙教育股份有限公司 一种基于Cordova的客户端热更新方法
CN108287836A (zh) * 2017-01-09 2018-07-17 腾讯科技(深圳)有限公司 一种资源缓存方法及装置
CN108287836B (zh) * 2017-01-09 2022-09-13 腾讯科技(深圳)有限公司 一种资源缓存方法及装置
CN107220371A (zh) * 2017-06-14 2017-09-29 北京小米移动软件有限公司 页面显示方法、装置及存储介质
CN107220371B (zh) * 2017-06-14 2021-06-25 北京小米移动软件有限公司 页面显示方法、装置及存储介质
US11210449B2 (en) 2017-06-14 2021-12-28 Beijing Xiaomi Mobile Software Co., Ltd. Page display method and device and storage medium
CN110209964A (zh) * 2018-02-13 2019-09-06 阿里巴巴集团控股有限公司 一种页面显示方法、装置及设备
CN108984201A (zh) * 2018-07-09 2018-12-11 深圳市思迪信息技术股份有限公司 移动平台版本智能在线升级方法及装置
WO2020015162A1 (zh) * 2018-07-18 2020-01-23 平安科技(深圳)有限公司 混合应用的图片处理方法、装置、计算机设备及存储介质
CN109471648A (zh) * 2018-11-08 2019-03-15 网宿科技股份有限公司 屏幕布局数据处理方法、装置、电子设备及存储介质
CN113779458A (zh) * 2021-07-27 2021-12-10 北京房江湖科技有限公司 应用加速加载的方法及装置、电子设备及存储介质
CN113779458B (zh) * 2021-07-27 2024-02-27 贝壳找房(北京)科技有限公司 应用加速加载的方法及装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN105577813B (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
CN105577813A (zh) 一种web混合应用的更新方法和系统
CN109491695A (zh) 一种集成安卓应用的增量更新方法
KR20180137554A (ko) 패치 업그레이드 기반 파일 처리 방법 및 디바이스, 단말기, 및 저장 매체
CN111666096B (zh) 目标应用的热更新方法和装置、存储介质和电子设备
CN110806868B (zh) 一种单页面搭建及加载方法
CN104714828A (zh) 应用安装、运行方法及装置
CN105487905A (zh) 一种混合应用的更新方法和装置
CN105302563A (zh) 移动应用服务的插件化方法及系统
CN106686200B (zh) 移动应用程序更新方法、移动终端及更新系统
US11321080B2 (en) Patch package generation method and device
US9141363B2 (en) Application construction for execution on diverse computing infrastructures
CN112835975B (zh) 一种在区块链中部署、更新、调用智能合约的方法
CN105740033A (zh) 一种终端设备、插件加载运行装置及插件加载运行方法
JP6198229B2 (ja) 並列化可能で信頼できるインストールのためのインストールエンジン及びパッケージフォーマット
CN106569880A (zh) 一种Android应用间动态共享资源的方法及系统
CN104580267A (zh) 一种资源下载方法、装置、服务器和相应的系统
CN112286504A (zh) 移动APP中基于ReactNative实现小程序开发并加载的方法
CN107463405A (zh) 一种应用程序的更新方法及装置
CN115421740A (zh) 云原生应用的部署方法和装置
CN116401003A (zh) 基于桌面操作系统的安卓应用运行方法、系统及存储介质
CN115443458A (zh) 数据同步中的多模式版本支持
CN117112122A (zh) 一种集群部署方法和装置
CN106293790B (zh) 基于Firefox操作系统的应用程序升级方法和装置
CN116685946A (zh) 在不停止应用的执行的情况下的更新的共享库的重新加载
AU2016378425B2 (en) Application program running method and apparatus

Legal Events

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