CN108304207A - 混合app应用程序的资源更新方法及系统 - Google Patents

混合app应用程序的资源更新方法及系统 Download PDF

Info

Publication number
CN108304207A
CN108304207A CN201810172087.9A CN201810172087A CN108304207A CN 108304207 A CN108304207 A CN 108304207A CN 201810172087 A CN201810172087 A CN 201810172087A CN 108304207 A CN108304207 A CN 108304207A
Authority
CN
China
Prior art keywords
server
resource packet
static
app
static resource
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.)
Pending
Application number
CN201810172087.9A
Other languages
English (en)
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.)
Shanghai Looking For Steel Network Information Polytron Technologies Inc
Original Assignee
Shanghai Looking For Steel Network Information Polytron Technologies Inc
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 Shanghai Looking For Steel Network Information Polytron Technologies Inc filed Critical Shanghai Looking For Steel Network Information Polytron Technologies Inc
Priority to CN201810172087.9A priority Critical patent/CN108304207A/zh
Publication of CN108304207A publication Critical patent/CN108304207A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种混合APP应用程序的资源更新方法及系统,适用于移动客户端。方法包括以下步骤:(a)启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息;(b)检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时,从服务端获取最新静态化资源包;(c)部署最新静态化资源包至移动客户端的APP沙盒中;(d)启动APP沙盒中的最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据。本发明对混合APP应用程序的使用流畅度、响应速度、运行性能等方面都有很大提升。

Description

混合APP应用程序的资源更新方法及系统
技术领域
本发明涉及网络通信技术领域,尤其涉及一种适用于移动客户端的混合APP应用程序的资源更新方法及系统。
背景技术
随着移动网络技术的发展,移动客户端APP应用程序飞速成为终端上的主流程序。用户可以使用各个网络服务提供商的APP应用程序,与对应的服务端进行通信,来实现该网络服务提供商的各项业务。具体而言,用户通过在APP应用程序内开启各个页面来与服务端进行交互,完成获取业务信息、启动和控制业务过程、提交业务数据等各个流程。
在APP不同类型中,有一种类型的APP被称为混合APP应用程序,该种APP是指APP内容通过HTML5(Hypertext Markup Language Language 5,超文本标记语言第5版,简称H5)技术来实现的,同时H5技术可调用移动平台原生API。其可以实现在不更新APP的情况下,可以让移动用户及时获取APP中的最新内容,极大地提升开发效率和降低维护成本。混合APP与原生APP通过开发所使用的技术不同来区分:混合APP通过原生态的开发语言(ios系统为Object C、android系统为java)+H5一起开发的,H5可以调用原生态的开发语言页面中的接口,原生态的开发语言也可以调用H5页面中的接口。原生APP通过纯原生态的开发语言开发的APP,不存在与H5页面相互调用。
参考图1,现有混合APP应用程序的资源请求模式示意图。由于设置于移动客户端11的混合APP应用程序111需要在web中运行H5的内容,一些较大的资源(例如图片、样式表等)必须通过网关12从服务端端13获取。混合APP应用程序111需要通过网关12向服务端13发起资源请求,并接收服务端13通过网关12返回的资源。这样就有可能存在请求响应延时或超时的情况,请求页面空白、卡顿等,对APP的使用流畅度、响应速度、运行性能等方面都有影响,也导致用户体验不佳。
发明内容
本发明的目的在于,提供一种适用于移动客户端的混合APP应用程序的资源更新方法及系统,其通过将所有请求资源整体为一资源包,当混合APP应用程序运行时该资源包以热更新方式安装并在移动客户端的APP沙盒中运行,当混合APP应用程序向服务端请求资源时,直接从本地APP沙盒中获取,而不必从服务端请求,有效地解决现有技术中混合APP应用程序中应用对资源请求存在延时或超时的问题,从而提升操作性能,并且该种方法具有响应速度快且节省流量等特点。
为实现上述目的,本发明提供了一种混合APP应用程序的资源更新方法,适用于移动客户端,包括以下步骤:(a)启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息;(b)检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时,从服务端获取最新静态化资源包;(c)部署所述最新静态化资源包至所述移动客户端的APP沙盒中;(d)启动所述APP沙盒中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据。
为实现上述目的,本发明还提供了一种混合APP应用程序的资源更新系统,适用于移动客户端,包括设置于移动客户端的APP启动模块、版本检查模块、资源包下载模块、APP沙盒、资源包部署模块以及WEB视图模块;所述APP启动模块,用于启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息;所述版本检查模块,用于检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时调用所述资源包下载模块从服务端获取最新静态化资源包;所述资源包部署模块,用于部署所述最新静态化资源包至所述APP沙盒中;所述WEB视图模块,用于启动所述APP沙盒中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据
本发明的优点在于,通过将资源做静态化处理,使得所有资源文件均在混合APP应用程序的APP沙盒中;当请求资源时,无需通过任何网络请求,即使在无网络的环境下也能及时响应请求的资源,从而对混合APP应用程序的使用流畅度、响应速度、运行性能等方面都有很大提升,用户体验也随之得到极大改善。
附图说明
图1,现有混合APP应用程序的资源请求模式示意图;
图2,本发明所述的混合APP应用程序的资源更新方法的流程示意图;
图3,静态化资源包生成方式示意图;
图4,静态化资源包热更新流程示意图;
图5,跨域请求数据通讯认证流程示意图;
图6,本发明所述的混合APP应用程序的资源更新系统的架构示意图;
图7,本发明所述的混合APP应用程序的资源更新系统的最新静态化资源包获取流程示意图;
图8,本发明所述的混合APP应用程序的资源更新系统的跨域请求业务数据及通讯认证流程示意图。
具体实施方式
下面结合附图对本发明提供的混合APP应用程序的资源更新方法及系统的具体实施方式做详细说明。
参考图2,本发明所述的混合APP应用程序的资源更新方法的流程示意图。所述的混合APP应用程序的资源更新方法,适用于移动客户端,包括以下步骤:S21:启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息;S22:检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时,从服务端获取最新静态化资源包;S23:部署所述最新静态化资源包至所述移动客户端的APP沙盒中;S24:启动所述APP沙盒中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据;以下结合附图对上述步骤做详细说明。
S21:启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息。
页面和页面所关联的图片、样式表、脚本等统称为资源。用户需要进行混合APP应用程序的资源更新时,先打开混合APP应用程序,混合APP应用程序会获取用户标识信息,以用于后续进行用户权限认证。用户标识信息具体是指用户的身份标识,此标识用于用户登录和权限控制,如用户的账号名。
S22:检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时,从服务端获取最新静态化资源包。
静态化资源包包含如下内容:图片文件、css样式表文件、javascript脚本文件、HTML页面文件。
参考图3,静态化资源包生成方式示意图。其中,资源包管理员,用于发出静态化所有资源指令;静态化资源请求处理器设置于服务器端中,用于接收静态化所有资源指令,并返回静态化资源包;资源静态化器设置于服务器端中,用于进行资源静态化并生成静态化资源包;静态化资源列表包含在服务器端的资源池中,而资源池包含了需静态化的资源列表中的所有内容。
具体的,静态化资源包生成包括以下步骤:
1)将所有资源均放到一个主目录中,通过不同的子目录来区分不同资源内容,所述资源包括服务端动态页面文件、样式表文件、图片文件以及脚本文件。具体的,项目开发时将服务端动态页面文件、所需的样式表文件、图片文件、javascript脚本文件等,均放在到一个主目录中,通过不同的子目录来区分不同资源,如主目录为mobile,页面路径为page,图片目录为img等。
2)配置需要静态化的资源的静态化资源列表及资源目录清单。静态化资源列表是资源包解压后的静态化资源目录清单。
3)根据所述静态化资源列表,通过HTTP协议将服务端动态页面内容输出成HTML静态页面,并拷贝所述HTML静态页面中引用的图片文件、样式表文件、脚本文件至服务端的相应存储路径。具体的,可以在服务端创建资源静态化器,此静态化器根据配置的静态化资源列表,将动态页面内容通过HTTP协议请求输出成HTML文件,并将HTML中引用的图片、样式表、javascript脚本的绝对路径替换为相对路径。
4)生成当前资源文件的版本信息。
5)将所述HTML静态页面、所述资源目录清单中相应的资源文件以及当前资源文件的版本信息进行打包压缩,以形成静态化资源包。具体的,将输出的HTML文件、配置的资源目录清单中相应的资源文件和当前资源文件的版本信息,通过zip工具包压缩打包为最终静态化资源包。
通过上述步骤实现了资源静态化,之后可以进行静态化资源包正确性检查:在pc端解压该资源资源包,通过浏览器打开静态HTML,页面展示效果和动态页面运行在服务器上的效果是否一致。暂时效果一致后,将静态化资源包整体提交到Native开发包中,最终和Native代码一起打包为APP安装文件。
混合APP应用程序打开后,会先检查当前静态化资源包是否为最新版。若已是最新版,则继续进行后续流程,若不是最新版本,则需要获取最新版本。具体的,将当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息进行比较,若不一致,则通过网关转发一静态化资源包请求指令至服务端,并接收服务端返回的最新静态化资源包;若一致,则当前静态化资源包即为最新静态化资源包。
所述最新静态化资源包进一步采用以下方式获取:1)服务端根据所述静态化资源包请求指令生成一打包请求;2)服务端根据所述打包请求从服务端的资源池中获取最新资源列表;3)服务端根据所述最新资源列表,将相应的资源文件进行静态化处理后进行打包压缩形成最新静态化资源包;4)服务端更新打包压缩后的最新静态化资源包的版本信息。
参考图4,静态化资源包热更新流程示意图。具体的,因静态化资源打包在APP安装文件中,若资源包本身有更新时,就需要对资源包进行热更新,即不用重新下载整个APP,只需下载更新资源包,也无需重新安装。具体实现方案如下:将最新的静态资源打包,并更新资源包中资源版本号;在移动客户端的APP沙盒每次请求服务端业务数据时,检查APP沙盒中资源包版本号和当前服务端中的资源包版本号大小;若服务端的版本号大,则提示用户下载资源包;移动客户端下载完资源包后,将APP沙盒内资源包替换为最新资源包。
S23:部署所述最新静态化资源包至所述移动客户端的APP沙盒中。
获取到最新静态化资源包后,混合APP应用程序会将最新静态化资源包部署到APP沙盒中,最终将资源包中启动页返回到Web视图。具体的,获取所述最新静态化资源包中的启动页并上传至混合APP应用程序中的WEB视图,以启动静态资源界面。
S24:启动所述APP沙盒中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据。
步骤S24进一步具体包括:1)通过混合APP应用程序中的WEB视图程序加载所述最新静态化资源包中的启动页,启动静态资源界面;2)所述APP沙盒通过所述WEB视图程序发送一业务数据请求至服务端,所述业务数据请求中携带有用户标识信息;3)所述WEB视图程序接收服务端返回的界面所需的业务数据,其中服务端接收业务数据请求并进行合法性校验,并根据用户标识信息判定用户合法后,调用与所述业务数据请求相对应的业务数据,并且返回至所述WEB视图程序。
参考图5,跨域请求数据通讯认证流程示意图。其中,权限过滤器以及缓存服务器设置于服务器端中,权限过滤器用于对业务数据请求的合法性进行校验;缓存服务器用于进行服务端请求校验。将静态化资源包部署到APP沙盒并启动静态资源界面后,需与服务端通讯。因静态化资源是运行在APP沙盒中,其和服务端不是隶属于同一个域,APP沙盒中发出的静态页面请求服务端业务数据会存在以下问题:1)服务端因APP沙盒中发出的请求与自身不是来自同一域,判定为不合法请求,会拒绝请求响应,导致APP沙盒内静态化页面服务端业务数据失败;2)因为不同移动平台的不同操作系统版本对APP沙盒存储的cookies信息实现不完全一样,导致服务端认为APP沙盒中发出的不同页面的请求不是同一个会话(session),会要求用户重新登录后才能访问服务端业务数据,最终导致用户重复登录。故APP沙盒中发出的请求需通过服务端第三方认证模块认证后,才能从服务端获取静态资源界面渲染所需的业务数据,也即需要进行跨域请求数据通讯认证。
跨域请求数据通讯认证具体采用以下方式实现:1)服务端对所述APP沙盒发出的页面请求设置为授信,所述页面请求包括业务数据请求;即服务端判定APP沙盒中发出的页面请求均为合法请求。2)服务端接收到所述APP沙盒发出的页面请求时,通过当前请求用户标识信息在缓存服务器中查找该用户是否已经登录,若有登录信息则返回该请求所需的服务端的业务数据,若没有登录信息,则控制移动客户端跳转到登录界面。也即,服务端请求校验从服务端的session校验调整为从缓存服务器中校验;同时,APP沙盒中静态页面所有向服务端发起的业务数据请求时,附带当前用户标识信息(例如用户ID,用户ID可通过H5的session Storage中获取,用户登录时将其ID存储在session Stroage中)。
混合APP常规模式下,请求资源必须通过网关找到对应服务器,服务器再将所有请求资源逐一响应返回。通常情况下,请求的资源都比较多、比较大,如图片、javascript脚本文件,导致网络响应不及时,请求页面空白、卡顿等,用户体验不佳。通过资源静态化,让所有资源文件均储存在混合APP的本地沙盒中,请求资源时,无需通过任何网络请求,即使在无网络的环境下亦能及时响应请求的资源。对混合APP的使用流畅度、响应速度、运行性能等方面都有很大提升,用户体验也随之得到加大改善。
参考图6,本发明所述的混合APP应用程序的资源更新系统的架构示意图。所述的混合APP应用程序的资源更新系统,适用于移动客户端,包括设置于移动客户端60的APP启动模块61、版本检查模块62、资源包下载模块63、APP沙盒64、资源包部署模块65以及WEB视图模块66。
所述APP启动模块61,用于启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息。页面和页面所关联的图片、样式表、脚本等统称为资源。用户需要进行混合APP应用程序的资源更新时,先打开混合APP应用程序,混合APP应用程序会获取用户标识信息,以用于后续进行用户权限认证。用户标识信息具体是指用户的身份标识,此标识用于用户登录和权限控制,如用户的账号名。
所述版本检查模块62,用于检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时调用所述资源包下载模块63从服务端获取最新静态化资源包。静态化资源包包含如下内容:图片文件、css样式表文件、javascript脚本文件、HTML页面文件。
APP启动模块61打开混合APP应用程序后,版本检查模块62会先检查当前静态化资源包是否为最新版。若已是最新版,则继续进行后续流程,若不是最新版本,则需要调用资源包下载模块63获取最新版本。具体的,版本检查模块62将当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息进行比较,若不一致,则资源包下载模块63通过网关转发一静态化资源包请求指令至服务端,并接收服务端返回的最新静态化资源包;若一致,则当前静态化资源包即为最新静态化资源包。
参考图7,本发明所述的混合APP应用程序的资源更新系统的最新静态化资源包获取流程示意图。APP启动模块61打开混合APP应用程序后,版本检查模块62检查到有新版本的静态化资源包,资源包下载模块63通过网关71转发一静态化资源包请求指令至服务端72;服务端72的资源包请求收发模块721根据所述静态化资源包请求指令生成一打包请求;服务端72的资源包静态化处理模块722(即为图3中的资源静态化器)根据所述打包请求从服务端72的资源池723中查找并获取最新资源列表;服务端72的资源包请求收发模块721根据所述最新资源列表,将相应的资源文件进行静态化处理后进行打包压缩形成最新静态化资源包,并更新打包压缩后的最新静态化资源包的版本信息;之后资源包请求收发模块721将最新静态化资源包返回至移动客户端60的资源包下载模块63。
最新静态化资源包获取所涉及的模块及说明如表1所示:
表1,最新静态化资源包获取所涉及的模块及说明。
所述资源包部署模块64,用于部署所述最新静态化资源包至所述APP沙盒65中。获取到最新静态化资源包后,混合APP应用程序会启动资源包部署模块64将最新静态化资源包部署到APP沙盒65中,最终将资源包中启动页返回到Web视图。
静态资源包部署所涉及的模块及说明如表2所示:
表2,静态资源包部署所涉及的模块及说明。
所述WEB视图模块66,用于启动所述APP沙盒65中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据。具体的,通过WEB视图模块66加载所述最新静态化资源包中的启动页,启动静态资源界面;APP沙盒65通过所述WEB视图模块66发送一业务数据请求至服务端,所述业务数据请求中携带有用户标识信息;WEB视图模块66接收服务端返回的界面所需的业务数据;其中服务端接收业务数据请求并进行合法性校验,并根据用户标识信息判定用户合法后,调用与所述业务数据请求相对应的业务数据,并且返回至所述WEB视图模块66。
图8,本发明所述的混合APP应用程序的资源更新系统的跨域请求业务数据及通讯认证流程示意图。资源包部署模块64获取部署后的资源启动页,并提交到Web视图模块66;通过WEB视图模块66加载所述最新静态化资源包中的启动页,启动静态资源界面;APP沙盒65通过所述WEB视图模块66发送一业务数据请求至服务端72的请求拦截模块724(即为图5中的权限过滤器),所述业务数据请求中携带有用户标识信息;请求拦截模块724在拦截业务数据请求之后,发送合法性认证请求至服务端72的用户认证模块725,对业务数据请求的合法性进行校验;用户认证模块725在接收到合法性认证请求之后,发送用户标识信息至服务端72的用户认证中心426(即为图5中的缓存服务器),用户认证中心426判断当前发送的业务数据请求中的用户是否合法,并返回认证结果;)所述请求拦截模块724根据返回的认证结果执行相应的操作:当所述认证结果为允许时,所述请求拦截模块724从服务端72的业务数据服务模块727中调用与所述业务数据请求相对应的业务数据,并且返回至所述WEB视图模块66。
跨域请求业务数据及通讯认证所涉及的模块及说明如表3所示:
表3,跨域请求业务数据及通讯认证所涉及的模块及说明。
跨域请求数据通讯认证具体采用以下方式实现:1)服务端对所述APP沙盒发出的页面请求设置为授信,所述页面请求包括业务数据请求;即服务端判定APP沙盒中发出的页面请求均为合法请求。2)服务端接收到所述APP沙盒发出的页面请求时,通过当前请求用户标识信息在缓存服务器中查找该用户是否已经登录,若有登录信息则返回该请求所需的服务端的业务数据,若没有登录信息,则控制移动客户端跳转到登录界面。
以下以找钢网的钢厂助手APP为示例,对资源静态化在混合APP中的应用做进一步说明。
首先,将动态资源静态化。具体为:1)将所有需要静态化页面、图片资源、样式表等规划到mobile主目录中,样式表目录:mobile/css,图片目录:mobile/img,javascript脚本目录:mobile/js,静态页面目录:html,动态页面目录:page;2)配置需静态化的资源清单,如下表4所示;3)最终生成的zip包。
资源类型 资源名称 资源路径 静态化资源名称 静态化资源路径 说明
page login.action m/ login.html html/ 登录页
js component.util.js js/component/ component.util.js js 工具脚本
表4,需静态化的资源清单配置结果。
其次,实现跨域数据访问。具体为:1)服务端对APP沙盒发出的页面请求设置为授信:响应头Header中添加跨域参数;2)APP沙盒中静态页面所有向服务端发起数据请求时,附带当前用户ID,便于用户合法性认证。
以及,热更新。具体为:在用户通过APP沙盒静态页面访问服务端数据时,页面将获取到的最新资源包版本号通过js传递到Native中,Native将最新版本号与本地APP沙盒中版本号对比,若服务端版本号大,则向服务端发起下载资源包请求。Native下载后,将最新资源包替换到APP沙盒中。为避免系统缓存,Native将混合App页面重新跳转到登录页,用户登录后便可查看到最新更新内容。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种混合APP应用程序的资源更新方法,适用于移动客户端,其特征在于,包括以下步骤:
(a)启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息;
(b)检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时,从服务端获取最新静态化资源包;
(c)部署所述最新静态化资源包至所述移动客户端的APP沙盒中;
(d)启动所述APP沙盒中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据。
2.根据权利要求1所述的方法,其特征在于,在步骤(b)中,所述静态化资源包进一步采用以下方式生成:
(b11)将所有资源均放到一个主目录中,通过不同的子目录来区分不同资源内容,所述资源包括服务端动态页面文件、样式表文件、图片文件以及脚本文件;
(b12)配置需要静态化的资源的静态化资源列表及资源目录清单;
(b13)根据所述静态化资源列表,通过HTTP协议将服务端动态页面内容输出成HTML静态页面,并拷贝所述HTML静态页面中引用的图片文件、样式表文件、脚本文件至服务端的相应存储路径;
(b14)生成当前资源文件的版本信息;
(b15)将所述HTML静态页面、所述资源目录清单中相应的资源文件以及当前资源文件的版本信息进行打包压缩,以形成静态化资源包。
3.根据权利要求1所述的方法,其特征在于,在步骤(b)中,进一步包括:
将当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息进行比较,若不一致,则通过网关转发一静态化资源包请求指令至服务端,并接收服务端返回的最新静态化资源包;若一致,则当前静态化资源包即为最新静态化资源包。
4.根据权利要求3所述的方法,其特征在于,所述最新静态化资源包进一步采用以下方式获取:
(b21)服务端根据所述静态化资源包请求指令生成一打包请求;
(b22)服务端根据所述打包请求从服务端的资源池中获取最新资源列表;
(b23)服务端根据所述最新资源列表,将相应的资源文件进行静态化处理后进行打包压缩形成最新静态化资源包;
(b24)服务端更新打包压缩后的最新静态化资源包的版本信息。
5.根据权利要求1所述的方法,其特征在于,在步骤(c)中,进一步包括:获取所述最新静态化资源包中的启动页并上传至混合APP应用程序中的WEB视图,以启动静态资源界面。
6.根据权利要求1所述的方法,其特征在于,在步骤(d)中,进一步包括:
(d1)通过混合APP应用程序中的WEB视图程序加载所述最新静态化资源包中的启动页,启动静态资源界面;
(d2)所述APP沙盒通过所述WEB视图程序发送一业务数据请求至服务端,所述业务数据请求中携带有用户标识信息;
(d3)所述WEB视图程序接收服务端返回的界面所需的业务数据,其中服务端接收业务数据请求并进行合法性校验,并根据用户标识信息判定用户合法后,调用与所述业务数据请求相对应的业务数据,并且返回至所述WEB视图程序。
7.根据权利要求6所述的方法,其特征在于,在步骤(d3)中,进一步包括:
(d31)服务端对所述APP沙盒发出的页面请求设置为授信,所述页面请求包括业务数据请求;
(d32)服务端接收到所述APP沙盒发出的页面请求时,通过当前请求用户标识信息在缓存服务器中查找该用户是否已经登录,若有登录信息则返回该请求所需的服务端的业务数据,若没有登录信息,则控制移动客户端跳转到登录界面。
8.一种混合APP应用程序的资源更新系统,适用于移动客户端,其特征在于,包括设置于移动客户端的APP启动模块、版本检查模块、资源包下载模块、APP沙盒、资源包部署模块以及WEB视图模块:
所述APP启动模块,用于启动安装于移动客户端中的混合APP应用程序,并且获取用户标识信息;
所述版本检查模块,用于检查当前静态化资源包的版本信息与服务端的最新静态化资源包的版本信息是否一致,并在判定版本信息不一致时调用所述资源包下载模块从服务端获取最新静态化资源包;
所述资源包部署模块,用于部署所述最新静态化资源包至所述APP沙盒中;
所述WEB视图模块,用于启动所述APP沙盒中的所述最新静态化资源包中的静态资源界面,并且与服务端进行跨域通讯,根据所述用户标识信息完成用户权限认证,以从服务端获取界面所需的业务数据。
CN201810172087.9A 2018-03-01 2018-03-01 混合app应用程序的资源更新方法及系统 Pending CN108304207A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810172087.9A CN108304207A (zh) 2018-03-01 2018-03-01 混合app应用程序的资源更新方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810172087.9A CN108304207A (zh) 2018-03-01 2018-03-01 混合app应用程序的资源更新方法及系统

Publications (1)

Publication Number Publication Date
CN108304207A true CN108304207A (zh) 2018-07-20

Family

ID=62849409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810172087.9A Pending CN108304207A (zh) 2018-03-01 2018-03-01 混合app应用程序的资源更新方法及系统

Country Status (1)

Country Link
CN (1) CN108304207A (zh)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109634641A (zh) * 2018-12-28 2019-04-16 北京城市网邻信息技术有限公司 一种应用程序更新方法、装置、电子设备及介质
CN109669715A (zh) * 2018-12-24 2019-04-23 北京金山安全软件有限公司 应用程序动态更新方法、设备及存储介质
CN110096295A (zh) * 2019-05-08 2019-08-06 吉旗(成都)科技有限公司 基于ReactNative的多模块移动应用的热更新方法及系统
CN110135127A (zh) * 2019-04-11 2019-08-16 北京亿赛通科技发展有限责任公司 一种基于沙箱的文档分布式基线化系统及导入和分发方法
CN110457085A (zh) * 2019-07-10 2019-11-15 北京奇艺世纪科技有限公司 文件处理方法、装置、终端设备和计算机可读介质
CN110609942A (zh) * 2019-09-06 2019-12-24 达疆网络科技(上海)有限公司 一种基于lbs定位计算地址方格存储app资源的方法
CN110806856A (zh) * 2019-10-30 2020-02-18 亚信科技(中国)有限公司 一种数据加载方法、装置及电子设备
CN110866198A (zh) * 2019-09-27 2020-03-06 上海硬通网络科技有限公司 静态资源缓存方法、系统、装置、计算机设备和存储介质
CN111176679A (zh) * 2019-12-24 2020-05-19 中国建设银行股份有限公司 一种应用程序更新方法和装置
CN111209016A (zh) * 2019-10-21 2020-05-29 江苏卓易信息科技股份有限公司 一种移动应用远程资源灰度更新的方法
CN111221626A (zh) * 2020-01-03 2020-06-02 北京字节跳动网络技术有限公司 一种沙盒系统环境的创建方法、装置、介质和电子设备
CN111679827A (zh) * 2020-04-28 2020-09-18 平安国际智慧城市科技股份有限公司 H5页面生成方法、装置、设备及存储介质
CN112114849A (zh) * 2020-09-23 2020-12-22 腾讯科技(深圳)有限公司 一种资源更新方法和装置
CN112597244A (zh) * 2020-12-23 2021-04-02 浙江中控技术股份有限公司 一种数据同步方法、装置及电子设备
CN113220273A (zh) * 2021-05-20 2021-08-06 南方电网数字电网研究院有限公司 微前端应用资源处理方法、装置、设备和介质
CN113326459A (zh) * 2021-06-11 2021-08-31 北京沃东天骏信息技术有限公司 图片更新方法和装置
CN113342400A (zh) * 2021-06-29 2021-09-03 上海哔哩哔哩科技有限公司 离线包打包方法、装置及计算机设备
CN113407231A (zh) * 2021-06-09 2021-09-17 广东全程云科技有限公司 一种SaaS服务的升级适配方法、用户移动端及系统
WO2021226965A1 (zh) * 2020-05-14 2021-11-18 深圳市欢太科技有限公司 资源处理方法、装置、电子设备和存储介质
CN113703807A (zh) * 2021-08-26 2021-11-26 上海德拓信息技术股份有限公司 一种静态资源版本实时检测与更新的方法及系统
CN117539521A (zh) * 2024-01-10 2024-02-09 中航国际金网(北京)科技有限公司 应用程序升级方法、装置、非易失性存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399671A (zh) * 2008-11-18 2009-04-01 中国科学院软件研究所 一种跨域认证方法及其系统
CN104778063A (zh) * 2015-04-16 2015-07-15 小米科技有限责任公司 资源更新方法和装置
CN105518689A (zh) * 2013-07-05 2016-04-20 Sgx联合股份有限公司 与用于访问数据网络的用户认证有关的方法和系统
CN105549996A (zh) * 2015-12-10 2016-05-04 网易(杭州)网络有限公司 移动终端的应用程序更新方法与移动终端
CN105992204A (zh) * 2015-02-03 2016-10-05 北京神州泰岳信息安全技术有限公司 移动智能终端应用程序的访问认证方法及装置
US20170300314A1 (en) * 2016-04-19 2017-10-19 Dropbox, Inc. Providing a hybrid application

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399671A (zh) * 2008-11-18 2009-04-01 中国科学院软件研究所 一种跨域认证方法及其系统
CN105518689A (zh) * 2013-07-05 2016-04-20 Sgx联合股份有限公司 与用于访问数据网络的用户认证有关的方法和系统
CN105992204A (zh) * 2015-02-03 2016-10-05 北京神州泰岳信息安全技术有限公司 移动智能终端应用程序的访问认证方法及装置
CN104778063A (zh) * 2015-04-16 2015-07-15 小米科技有限责任公司 资源更新方法和装置
CN105549996A (zh) * 2015-12-10 2016-05-04 网易(杭州)网络有限公司 移动终端的应用程序更新方法与移动终端
US20170300314A1 (en) * 2016-04-19 2017-10-19 Dropbox, Inc. Providing a hybrid application

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
叶小钗: "浅谈Hybrid技术的设计与实现第二弹", 《HTTPS://WWW.CNBLOGS.COM/YEXIAOCHAI/P/5524783.HTML》 *
李宝君: "转转hybrid app web静态资源离线系统实践", 《ZZFED.COM/#/DETAIL/5A5376C970AAA1172D26442B》 *

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669715A (zh) * 2018-12-24 2019-04-23 北京金山安全软件有限公司 应用程序动态更新方法、设备及存储介质
CN109634641A (zh) * 2018-12-28 2019-04-16 北京城市网邻信息技术有限公司 一种应用程序更新方法、装置、电子设备及介质
CN110135127A (zh) * 2019-04-11 2019-08-16 北京亿赛通科技发展有限责任公司 一种基于沙箱的文档分布式基线化系统及导入和分发方法
CN110135127B (zh) * 2019-04-11 2021-04-30 北京亿赛通科技发展有限责任公司 一种基于沙箱的文档分布式基线化系统及导入和分发方法
CN110096295B (zh) * 2019-05-08 2023-08-08 吉旗(成都)科技有限公司 基于ReactNative的多模块移动应用的热更新方法及系统
CN110096295A (zh) * 2019-05-08 2019-08-06 吉旗(成都)科技有限公司 基于ReactNative的多模块移动应用的热更新方法及系统
CN110457085A (zh) * 2019-07-10 2019-11-15 北京奇艺世纪科技有限公司 文件处理方法、装置、终端设备和计算机可读介质
CN110457085B (zh) * 2019-07-10 2022-10-21 北京奇艺世纪科技有限公司 文件处理方法、装置、终端设备和计算机可读介质
CN110609942A (zh) * 2019-09-06 2019-12-24 达疆网络科技(上海)有限公司 一种基于lbs定位计算地址方格存储app资源的方法
CN110609942B (zh) * 2019-09-06 2023-12-05 达疆网络科技(上海)有限公司 一种基于lbs定位计算地址方格存储app资源的方法
CN110866198A (zh) * 2019-09-27 2020-03-06 上海硬通网络科技有限公司 静态资源缓存方法、系统、装置、计算机设备和存储介质
CN110866198B (zh) * 2019-09-27 2022-10-28 上海硬通网络科技有限公司 静态资源缓存方法、系统、装置、计算机设备和存储介质
CN111209016A (zh) * 2019-10-21 2020-05-29 江苏卓易信息科技股份有限公司 一种移动应用远程资源灰度更新的方法
CN111209016B (zh) * 2019-10-21 2023-08-22 江苏卓易信息科技股份有限公司 一种移动应用远程资源灰度更新的方法
CN110806856A (zh) * 2019-10-30 2020-02-18 亚信科技(中国)有限公司 一种数据加载方法、装置及电子设备
CN111176679A (zh) * 2019-12-24 2020-05-19 中国建设银行股份有限公司 一种应用程序更新方法和装置
CN111176679B (zh) * 2019-12-24 2023-06-16 中国建设银行股份有限公司 一种应用程序更新方法和装置
CN111221626A (zh) * 2020-01-03 2020-06-02 北京字节跳动网络技术有限公司 一种沙盒系统环境的创建方法、装置、介质和电子设备
CN111679827B (zh) * 2020-04-28 2024-04-26 深圳赛安特技术服务有限公司 H5页面生成方法、装置、设备及存储介质
CN111679827A (zh) * 2020-04-28 2020-09-18 平安国际智慧城市科技股份有限公司 H5页面生成方法、装置、设备及存储介质
WO2021226965A1 (zh) * 2020-05-14 2021-11-18 深圳市欢太科技有限公司 资源处理方法、装置、电子设备和存储介质
CN112114849A (zh) * 2020-09-23 2020-12-22 腾讯科技(深圳)有限公司 一种资源更新方法和装置
CN112597244A (zh) * 2020-12-23 2021-04-02 浙江中控技术股份有限公司 一种数据同步方法、装置及电子设备
CN113220273A (zh) * 2021-05-20 2021-08-06 南方电网数字电网研究院有限公司 微前端应用资源处理方法、装置、设备和介质
CN113220273B (zh) * 2021-05-20 2024-06-04 南方电网数字电网研究院有限公司 微前端应用资源处理方法、装置、设备和介质
CN113407231A (zh) * 2021-06-09 2021-09-17 广东全程云科技有限公司 一种SaaS服务的升级适配方法、用户移动端及系统
CN113326459A (zh) * 2021-06-11 2021-08-31 北京沃东天骏信息技术有限公司 图片更新方法和装置
CN113326459B (zh) * 2021-06-11 2024-04-05 北京沃东天骏信息技术有限公司 图片更新方法和装置
CN113342400A (zh) * 2021-06-29 2021-09-03 上海哔哩哔哩科技有限公司 离线包打包方法、装置及计算机设备
CN113703807A (zh) * 2021-08-26 2021-11-26 上海德拓信息技术股份有限公司 一种静态资源版本实时检测与更新的方法及系统
CN113703807B (zh) * 2021-08-26 2023-12-15 上海德拓信息技术股份有限公司 一种静态资源版本实时检测与更新的方法及系统
CN117539521A (zh) * 2024-01-10 2024-02-09 中航国际金网(北京)科技有限公司 应用程序升级方法、装置、非易失性存储介质及电子设备
CN117539521B (zh) * 2024-01-10 2024-05-07 中航国际金网(北京)科技有限公司 应用程序升级方法、装置、非易失性存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN108304207A (zh) 混合app应用程序的资源更新方法及系统
CN104363264B (zh) 移动终端软件的多渠道sdk接入系统
KR102696321B1 (ko) 사용자 동의 프레임워크
CN103944890B (zh) 基于客户端/服务器模式的虚拟交互系统及方法
CN103036871B (zh) 浏览器应用插件支持装置和方法
US9864671B1 (en) Systems and methods of live experimentation on content provided by a web site
CN103841134B (zh) 基于api发送、接收信息的方法、装置及系统
US20160065560A1 (en) Redirection method for electronic content
US20100122351A1 (en) Software Application Framework for Network-Connected Devices
CN103023976B (zh) 一种浏览器应用插件扩展的装置和方法
WO2016173199A1 (zh) 一种移动应用单点登录方法及装置
CN104378376A (zh) 基于soa的单点登录方法、认证服务器和浏览器
CN110324338A (zh) 数据交互方法、装置、堡垒机与计算机可读存储介质
CN104584011A (zh) 用于web内容和web服务的安全网络内插入的方法和系统
CN104541262A (zh) 用于富因特网应用的透明网络内适配的系统和方法
CN112350978A (zh) 一种业务处理方法、系统、设备及存储介质
CN109819033A (zh) 一种资源文件加载方法及系统
US8127033B1 (en) Method and apparatus for accessing local computer system resources from a browser
CN107203576A (zh) 信息同步方法和装置
CN105791249A (zh) 一种第三方应用处理方法、装置以及系统
CN116015824A (zh) 一种平台统一认证方法、设备、介质
US20160191633A1 (en) Method and apparatus for implementing communication from web page to client
CN107566396A (zh) 一种基于动态口令增强服务器vpn协议安全的方法
CN113411324A (zh) 基于cas与第三方服务器实现登录认证的方法和系统
CN113742702B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180720