CN102135892B - 应用程序运行方法、装置及系统 - Google Patents

应用程序运行方法、装置及系统 Download PDF

Info

Publication number
CN102135892B
CN102135892B CN201010100336.7A CN201010100336A CN102135892B CN 102135892 B CN102135892 B CN 102135892B CN 201010100336 A CN201010100336 A CN 201010100336A CN 102135892 B CN102135892 B CN 102135892B
Authority
CN
China
Prior art keywords
application program
data file
data block
file
server end
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
CN201010100336.7A
Other languages
English (en)
Other versions
CN102135892A (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.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Huaduo Network 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 Guangzhou Huaduo Network Technology Co Ltd filed Critical Guangzhou Huaduo Network Technology Co Ltd
Priority to CN201010100336.7A priority Critical patent/CN102135892B/zh
Priority to PCT/CN2010/079860 priority patent/WO2011088714A1/zh
Priority to US13/574,469 priority patent/US9256414B2/en
Priority to JP2012549238A priority patent/JP5658283B2/ja
Publication of CN102135892A publication Critical patent/CN102135892A/zh
Application granted granted Critical
Publication of CN102135892B publication Critical patent/CN102135892B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • 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]

Abstract

本发明涉及软件处理技术领域,公开了一种应用程序运行方法、装置及系统,所述方法包括:创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块;将所述数据块加载到内存。利用本发明,无需进行专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。

Description

应用程序运行方法、装置及系统
技术领域
本发明涉及软件处理技术,具体涉及一种应用程序运行方法、装置及系统。
背景技术
一个应用程序,其运行时所需的文件通常包含两部分:程序文件和数据文件。而对于大部分应用程序,其数据文件的体积通常要比程序模块文件的体积大。
应用程序体积过大,不仅会占用过多的存储空间,而且会导致用户使用软件时间成本过高。因此,为了满足不同用户的应用需求,市面上有很多软件的瘦身版本,即精简版本。这些产品大多数都是针对资源文件的瘦身,一般而言,都是经过特殊定制的。还有一些精简版本的软件需要修改原程序的源代码,重新编译出新的程序文件,并且删减部分程序文件和数据文件,从而达到瘦身的目的。
这样的做法主要有以下缺点:
1、需要针对不同的应用程序进行特别定制,无法提供通用的方法。
2、精简版本的软件功能受限,如果用户需要体验其他功能,需要重新安装。
发明内容
本发明实施例提供一种应用程序运行方法、装置及系统,无需进行专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。
为此,本发明实施例提供如下技术方案:
一种应用程序运行方法,包括:
创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;
通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;
如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块;
将所述数据块加载到内存。
优选地,所述加载预先生成的所述应用程序的数据文件描述信息包括:
从所述服务器端加载所述应用程序的数据文件描述信息。
优选地,所述方法还包括:
在创建对应所述应用程序的进程之前,检查所述应用程序的数据文件描述信息是否保存在本地的指定目录;
如果是,则从所述指定目录加载所述数据文件描述信息;
如果否,则执行所述从所述服务器端加载所述应用程序的数据文件描述信息的步骤。
优选地,所述方法还包括:
抽取所述应用程序的数据文件,生成所述数据文件描述信息;
将所述数据文件描述信息保存到本地的指定目录和/或所述服务器端,并将所述数据文件保存到所述服务器端。
优选地,所述通过所述进程监听所述应用程序的I/O请求包括:
通过所述进程加载I/O钩子函数;
通过所述I/O钩子函数在所述应用程序运行时监听所述应用程序的I/O请求。
优选地,所述根据所述数据文件描述信息从所述服务器端获取所述应用程序所需的数据块包括:
根据所述数据文件描述信息检查所述数据文件是否存在;
如果所述数据文件存在,则向所述服务器端发送数据块下载请求;
接收所述服务器端下发的所述应用程序所需的数据块。
优选地,所述方法还包括:
在向所述服务器端发送数据块下载请求之前,检查所述应用程序所需的数据块是否保存在本地的映射文件中;
如果是,则从所述映射文件中获取所述应用程序所需的数据块;
如果否,则执行向所述服务器端发送数据块下载请求的步骤。
优选地,所述方法还包括:
接收到所述服务器端下发的所述应用程序所需的数据块后,将所述数据块保存到所述映射文件中,并更新所述映射文件的头部信息;
所述检查所述应用程序所需的数据块是否保存在本地的映射文件中包括:通过检查所述映射文件的头部信息,确定所述应用程序所需的数据块是否保存在本地的映射文件中。
优选地,所述方法还包括:
服务器端接收到所述数据块下载请求后,对所述请求进行验证并检测请求的数据块是否存在;
如果验证通过并且所述数据块存在,则将所述数据块发送给请求方。
一种应用程序运行装置,包括:
进程创建单元,用于创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;
监听单元,用于通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;
网络通信单元,用于在所述监听单元确定所述应用程序要访问的文件类型为数据文件后,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块;
加载单元,用于将所述数据块加载到内存。
优选地,网络通信单元还用于从所述服务器端下载所述数据文件描述信息,并将所述数据文件描述信息发送给所述进程创建单元。
优选地,所述装置还包括:
存储单元,用于在本地保存所述数据文件描述信息;
所述网络通信单元,还用于将下载的所述数据文件描述信息保存到所述存储单元中;
所述进程创建单元,还用于在创建对应所述应用程序的进程之前,检查所述应用程序的数据文件描述信息是否保存在所述存储单元中;如果是,则从所述存储单元中提取并加载所述应用程序的数据文件描述信息;如果不是,则向所述网络通信单元发送通知;
所述网络通信单元在接收到所述进程创建单元发送的通知后从所述服务器端下载所述数据文件描述信息。
优选地,所述装置还包括:
数据文件抽取单元,用于抽取所述应用程序的数据文件,生成所述数据文件描述信息,并将所述数据文件描述信息保存到所述存储单元和/或通过所述网络通信单元将所述数据文件描述信息上传给所述服务器端。
优选地,所述装置还包括:
检查单元,用于在所述监听单元确定所述应用程序要访问的文件类型为数据文件后,根据所述数据文件描述信息检查所述数据文件是否存在;
所述网络通信单元,具体用于在所述检查单元检查到所述数据文件存在后,从所述服务器端获取所述应用程序所需的数据块。
优选地,所述装置还包括:
映射单元,用于保存数据块的映射文件;
数据块提取单元,用于从所述映射单元中提取所述应用程序所需用数据块;
所述检查单元,还用于在检查到所述数据文件存在后,进一步检查所述应用程序所需的数据块是否保存在所述映射文件中;如果是,则向所述数据块提取单元发送通知;如果否,则向所述网络通信单元发送通知;
所述数据块提取单元,具体用于在收到所述检查单元发送的通知后,从所述映射单元保存的映射文件中提取所述应用程序所需的数据块,并将所述数据发送给所述加载单元;
所述网络通信单元,具体用于在收到所述检查单元发送的通知后,从所述服务器端获取所述应用程序所需的数据块,将所述数据块发送给所述加载单元,并将所述数据块保存到所述映射文件中,同步更新所述映射文件的头部信息。
所述检查单元通过检查所述映射文件的头部信息,确定所述应用程序所需的数据块是否保存在本地的映射文件中。
一种应用程序加载系统,包括:客户端和服务器端;
所述服务器端,用于保存应用程序所需的数据文件的各数据块;
所述客户端,用于创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从所述服务器端获取所述应用程序所需的数据块,并将所述数据块加载到内存。
优选地,所述客户端通过向所述服务器端发送数据文件请求从所述服务器端获取所述应用程序所需的数据块;
所述服务器端,还用于接收到所述数据文件请求后,对所述请求进行验证并检测请求的数据文件是否存在;
如果验证通过并且所述数据文件存在,则将所述数据文件发送给所述客户端。
一种计算机可读存储介质,包括计算机程序代码,该计算机程序代码由一个计算机单元执行,使得该计算机单元:
创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;
通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;
如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块;
将所述数据块加载到内存。
本发明实施例应用程序运行方法、装置及系统,在客户端,通过加载预先生成的所述应用程序的数据文件描述信息,并监听所述应用程序的I/O请求,在监听到应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型,并在所述应用程序要访问的文件类型为数据文件时,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块,将所述数据块加载到内存。这样,可以将应用程序的程序文件和数据文件相分离保存,使用户终端仅安装应用程序的程序模块文件,而数据文件可保存在外网,根据用户需要下载安装,从而有效地减少了应用程序的体积,节省了用户终端的存储空间。
利用本发明实施例的方法无需进行软件精简版本的专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。
附图说明
图1是本发明实施例应用程序运行方法的流程图;
图2是本发明实施例应用程序运行装置的一种结构示意图;
图3是本发明实施例应用程序运行装置的另一种结构示意图;
图4是本发明实施例应用程序运行装置的另一种结构示意图;
图5是本发明实施例应用程序运行装置的另一种结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例的方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
本发明实施例应用程序运行方法、装置及系统,针对上述现有技术存在的缺点,考虑到应用程序体积过大主要是由数据文件的体积过大引起的这一特点,将应用程序的程序文件和数据文件相分离保存。在客户端,通过加载预先生成的所述应用程序的数据文件描述信息,并监听所述应用程序的I/O请求,在监听到应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型,并在所述应用程序要访问的文件类型为数据文件时,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块,将所述数据块加载到内存。从而可以使用户终端仅安装应用程序的程序模块文件,而数据文件可保存在外网,根据用户需要下载安装,有效地减少了应用程序的体积,节省了用户终端的存储空间,而且无需进行软件精简版本的专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。
如图1所示,是本发明实施例应用程序运行方法的流程图,包括以下步骤:
步骤101,创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息。
所述数据文件描述信息可以通过预先抽取所述应用程序的数据文件来生成,该抽取过程可以在已经安装好所述应用程序的一个终端上进行,所述终端可以是运行所述应用程序的终端,也可以是其他终端。
例如,假设在一个终端上部署了wps的安装包,wps的安装目录为:C:\Program Files\Kingsoft\WPS Office Personal,则可以通过以下过程生成对应该wps的数据文件描述信息:
首先遍历该目录下的文件夹以及文件,分析在这个目录下具体有多少文件,哪些文件是数据文件,哪些文件是程序文件。具体地,可以根据文件名及其扩展名来区分程序文件和数据文件,比如,在C:\Program Files\Kingsoft\WPSOffice Personal\office6目录下大部分的dll文件和exe文件都是程序文件,在C:\Program Files\Kingsoft\WPS Office Personal\media目录下大部分文件都是数据文件。
除此之外,还可以通过分析文件的二进制格式来确定文件类型。
遍历分析之后,生成一个描述文件,即数据文件描述信息。这个描述文件主要包含如下的信息:应用程序包含多少个数据文件;每个数据文件的文件名、大小、MD5校验码等。除此之外,所述数据文件描述信息还可进一步包括:每个数据文件的映射文件名。其中,所述映射文件表示在用户终端存储的数据文件的映射信息,具体将在后面详细说明。
当然,根据应用需要,还可以有其他信息,本发明实施例对此不做限定。
在本发明实施例中,可以将所述数据文件描述信息保存到本地和/或服务器端,并将所述数据文件保存到服务器端。
在创建对应所述应用程序的进程之前,需要检查所述应用程序的数据文件描述信息是否已保存在本地的指定目录;如果是,则可以直接从本地加载所述数据文件描述信息;如果否,则可以从所述服务器端下载所述数据文件描述信息来加载。进一步,还可以将下载得到的数据文件描述信息保存到本地的指定目录中。这样,在以后需要加载所述应用程序的数据文件描述信息时,就可以直接从本地的指定目录中直接加载了,而无需再从服务端下载。
步骤102,通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型。
具体地,可以由所述进程对所述应用程序的文件的I/O应用程序接口(比如CreateFile、GetFileAttributes、SetFilePointer、CloseHandle、GetFileSize、ReadFile、WriteFile)等函数挂钩子(Hook),即加载I/O钩子函数,监听应用程序的I/O请求。在所述应用程序运行后,如果有I/O请求,则可以被I/O钩子函数监听并拦截到。
在计算机编程领域,使用钩子,可以拦截软件组件间的函数调用和消息传递,进而改变函数调用的执行结果或消息传递的内容。
在本发明实施例中,I/O钩子函数监听到所述应用程序的I/O请求后,根据所述I/O请求得到所述应用程序要访问的文件句柄,根据该文件句柄可以得到该文件的相关信息,比如文件名、大小、属性(只读/读写等),根据这些信息即可确定被访问的文件类型。比如,所述应用程序的数据文件描述信息中包含该文件名,则表明所述应用程序被访问的文件为数据文件。
步骤103,如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块。
前面提到,所述数据文件描述信息可以包括以下信息:每个数据文件的文件名、大小、MD5校验码等。因此,所述I/O钩子函数根据所述数据文件描述信息即可检查所述应用程序需要访问的数据文件是否存在。如果所述数据文件描述信息中包含所述应用程序需要访问的数据文件的文件名,则表明该数据文件存在;否则表明该数据文件不存在。
如果检查到所述数据文件不存在,可以向用户返回错误提示信息;
如果检查到所述数据文件存在,则可以从服务器端获取所述应用程序所需的数据块。具体地,可以向所述服务器端发送数据块下载请求;并接收所述服务器端下发的所述应用程序所需的数据块。所述的数据块是所述数据文件中的一部分数据或全部数据。
所述服务器端接收到所述数据文件请求后,还可以对所述请求进行验证并检测请求的数据文件是否存在;如果验证通过并且所述数据文件存在,则将所述数据文件发送给请求方。这样,可以进一步保证数据的安全性。
同样,为了方便后续应用程序再次运行时对所述数据块的加载需求,并节省加载时间成本,在从服务器端获取到所述应用程序所需的数据块后,可以将其映射到本地的映射文件中。
相应地,在本发明实施例中,在从服务器端获取所述应用程序所需的数据块之前,还可以进一步检查所述应用程序所需的数据块是否保存在本地的映射文件中。如果所述数据块保存在本地的映射文件中,则可以直接从所述映射文件中提取所述应用程序所需的数据块;否则从所述服务器端获取所述应用程序所需的数据块。
所述映射文件可以包括:头部信息和数据信息两部分内容。其中头部信息包括:所述映射文件中包含的各数据块的索引信息,比如,名称、偏移地址等。这样,在检查所述应用程序所需的数据块是否保存在本地的映射文件中时,无需遍历整个映射文件,只需根据该头部信息中的内容即可确定,从而方便了对所述映射文件中保存的信息的查找。
相应地,为了保证映射文件中头部信息和数据信息的对应,在将从所述服务器端获取的数据块保存到所述映射文件后,还要同步更新所述映射文件的头部信息。
当然,本发明实施例中并不仅限定上述这种实现方式,比如,为了进一步节省用户终端的内存空间,也可以不在本地保存所述数据块,应用程序每次运行时,如果需要访问数据文件,再从服务器端下载相应的数据块。
另外,由于应用程序在访问数据文件时,有时可能只需访问该数据文件中的某个或某些数据块,因此,每次从服务器端下载时,可以将应用程序需要访问的数据文件完整地下载到本地,也可以只下载所述数据文件中所述应用程序所需的数据块。当然,应用程序也可以不按照数据块的边界来访问,有时可能只是访问一个数据块的一部分内容,有时可能会访问连续的几个数据块。为此,可以通过一定的算法根据应用程序要访问的文件偏移以及数据大小进行确定,并将其转换为对应的数据块映射到所述映射文件中。也就是说,本地保存的映射文件中的数据块可以和下载的数据块的格式不同,存在一定的映射关系。
步骤104,将所述数据块加载到内存,以供所述应用程序使用。
本发明实施例应用程序运行方法,通过加载预先生成的所述应用程序的数据文件描述信息,并监听所述应用程序的I/O请求,在监听到应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型,并在所述应用程序要访问的文件类型为数据文件时,根据所述数据文件描述信息获取所述应用程序所需的数据块,将所述数据块加载到内存。从而可以使用户终端仅安装应用程序的程序模块文件,而数据文件可保存在外网,根据用户需要下载安装,有效地减少了应用程序的体积,节省了用户终端的存储空间,而且无需进行软件精简版本的专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如:ROM/RAM、磁碟、光盘等。
相应地,本发明实施例还提供一种应用程序运行装置,如图2所示,是该装置的一种结构示意图。
在该实施例中,所述装置包括:进程创建单元201,监听单元202,网络通信单元203和加载单元204。其中:
进程创建单元201,用于创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息。
所述数据文件描述信息可以是保存在本地的,也可以是保存在服务器端的,当然,也可以是同时保存在本地和服务器端的。
如前面所述,所述数据文件描述信息可以由安装所述应用程序的用户终端抽取所述应用程序的数据文件来生成,并将其保存在本地和/或服务器端;也可以是由其他用户终端生成后保存到服务器端的。所述数据文件描述信息的具体内容及生成过程可参照前面本发明实施例应用程序运行方法中的描述,在此不再赘述。
相应地,所述进程创建单元201在加载所述数据文件描述信息时,可以是从本地加载,或是从所述服务器端获取并加载,具体过程将在后面详细说明。
需要说明的是,所述应用程序的数据文件也需要预先保存在所述服务器端。
监听单元202,用于通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型。
具体地,可以通过所述进程对所述应用程序的文件的I/O应用程序接口(比如CreateFile、GetFileAttributes、SetFilePointer、CloseHandle、GetFileSize、ReadFile、WriteFile)等函数挂钩子,即加载I/O钩子函数,监听应用程序的I/O请求。在所述应用程序运行后,如果有I/O请求,则可以被I/O钩子函数监听并拦截到。
I/O钩子函数监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型。
网络通信单元203,用于在所述监听单元202确定所述应用程序要访问的文件类型为数据文件后,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块。
前面提到,所述应用程序的数据文件预先保存在了服务器端,通常由于一个数据文件包含一个或多个数据块,而应用程序在访问某个数据文件时,可能只需要其中的一部分数据块,因此,在本发明实施例中,所述数据块获取单元203可以仅从所述服务器端获取所述应用程序所需的数据块。
加载单元204,用于将所述数据块加载到内存。
可见,本发明实施例应用程序运行装置,通过加载预先生成的所述应用程序的数据文件描述信息,并监听所述应用程序的I/O请求,在监听到应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型,并在所述应用程序要访问的文件类型为数据文件时,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块,将所述数据块加载到内存。从而可以使用户终端仅安装应用程序的程序模块文件,而将数据文件保存在外网,并根据用户需要下载安装,有效地减少了应用程序的体积,节省了用户终端的存储空间,而且无需进行软件精简版本的专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。
前面提到,所述数据文件描述信息可以由其他用户终端预先生成并保存在服务器端,为此,在本发明应用程序运行装置的一种实施例中,所述网络通信单元203,还用于从所述服务器端下载所述数据文件描述信息,并将所述数据文件描述信息发送给所述进程创建单元203。
如图3所示,是本发明实施例应用程序运行装置的另一种结构示意图。
与图2所示实施例不同的是,在该实施例中,所述装置还包括:
存储单元301,用于在本地保存所述数据文件描述信息;
所述网络通信单元203,还用于将下载的所述数据文件描述信息保存到所述存储单元301中。
在该实施例中,所述进程创建单元201在第一次加载所述数据文件描述信息时,只能通过所述网络通信单元203从所述服务器端下载所述数据文件描述信息来加载,而在后续所述应用程序再次运行时,就可以直接从所述存储单元301中加载所述数据文件描述信息。
相应地,所述进程创建单元201,还用于在创建对应所述应用程序的进程之前,检查所述应用程序的数据文件描述信息是否保存在所述存储单元301中;如果是,则从所述存储单元301中提取并加载所述应用程序的数据文件描述信息;如果不是,则向所述网络通信单元203发送通知。所述网络通信单元203在接收到所述进程创建单元201发送的通知后从所述服务器端下载所述数据文件描述信息,将所述数据文件描述信息返回给所述进程创建单元201,并将所述数据文件描述信息保存到所述存储单元301中。
前面提到,所述数据文件描述信息还可以由安装所述应用程序的用户终端抽取所述应用程序的数据文件来生成。
如图4所示,是本发明实施例应用程序运行装置的另一种结构示意图。
与图3所示实施例不同的是,在该实施例中,所述装置还包括:
数据文件抽取单元401,用于抽取所述应用程序的数据文件,生成所述数据文件描述信息,并将所述数据文件描述信息保存到所述存储单元301中。
当然,在本发明应用程序运行装置的另一实施例中,所述数据文件抽取单元401还可以通过所述网络通信单元将所述数据文件描述信息上传给所述服务器端。
当然,所述数据文件抽取单元401可以同时将所述数据文件描述信息保存到所述存储单元和通过所述网络通信单元上传给所述服务器端。
在该实施例中,所述进程创建单元201在第一次加载所述数据文件描述信息时,就可以直接从所述存储单元301中加载所述数据文件描述信息。
相应地,所述进程创建单元201,还用于在创建对应所述应用程序的进程之前,检查所述应用程序的数据文件描述信息是否保存在所述存储单元301中;如果是,则从所述存储单元301中提取并加载所述应用程序的数据文件描述信息;如果不是,则向所述网络通信单元203发送通知。所述网络通信单元203在接收到所述进程创建单元201发送的通知后从所述服务器端下载所述数据文件描述信息,将所述数据文件描述信息返回给所述进程创建单元201,并将所述数据文件描述信息保存到所述存储单元301中。
如图5所示,是本发明实施例应用程序运行装置的另一种结构示意图。
与图2所示实施例不同的是,在该实施例中,所述装置还包括:
检查单元501,用于在所述监听单元202确定所述应用程序要访问的文件类型为数据文件后,根据所述进程创建单元201加载的数据文件描述信息检查所述数据文件是否存在。
在该实施例中,所述网络通信单元203需要在所述检查单元501检查到所述数据文件存在后,从所述服务器端获取所述应用程序所需的数据块。
当然,所述检查单元501同样可以应用于上述图3和图4所示的实施例中。
为了进一步方便后续应用程序运行时对之前加载过的数据块的加载需求,在本发明实施例中,还可进一步包括:映射单元502和数据块提取单元503。其中:
映射单元502,用于保存数据块的映射文件;
数据块提取单元503,用于从所述映射单元502中提取所述应用程序所需用数据块。
在该实施例中,所述检查单元501,还用于在检查到所述数据文件存在后,进一步检查所述应用程序所需的数据块是否保存在所述映射文件中;如果是,则向所述数据块提取单元503发送通知;如果否,则向所述网络通信单元203发送通知。
所述数据块提取单元503,具体用于在收到所述检查单元501发送的通知后,从所述映射单元502保存的映射文件中提取所述应用程序所需的数据块,并将所述数据块发送给所述加载单元204。
同样,所述网络通信单元203,具体用于在收到所述检查单元501发送的通知后,从所述服务器端获取所述应用程序所需的数据块,并将所述数据块发送给所述加载单元204。同时,还要将所述数据块保存到所述映射文件中。
本发明实施例应用程序运行装置,通过加载预先生成的所述应用程序的数据文件描述信息,并监听所述应用程序的I/O请求,在监听到应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型,并在所述应用程序要访问的文件类型为数据文件时,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块,将所述数据块加载到内存。从而可以使用户终端仅安装应用程序的程序模块文件,而将数据文件保存在外网,并根据用户需要下载安装,有效地减少了应用程序的体积,节省了用户终端的存储空间,而且无需进行软件精简版本的专门定制,即可简单、高效地缩减应用程序安装包的体积,提供用户所需功能。进一步地,网络通信单元203从所述服务器端获取到所述应用程序所需的数据块,将其保存到所述映射文件中,可以使应用程序在后续再次运行时,可以直接从本地获取所述数据块,而无需再通过网络获取,从而有效地加快了所述数据块的加载时间,并最大限度地节省了本地存储空间。
在本发明实施例中,所述映射文件可以包括:头部信息和数据信息两部分内容。为此,所述网络通信单元203在将从服务器端获取到的数据块保存到所述映射文件的同时,还需要同步更新所述映射文件的头部信息。这样,可以使所述检查单元501在检查所述应用程序所需的数据块是否保存在本地的映射文件中时,无需遍历整个映射文件,只需检查所述映射文件的头部信息,即可确定所述应用程序所需的数据块是否保存在本地的映射文件中。
需要说明的是,在本发明实施例中,所述映射文件中的数据块可以和从服务器端下载获得的数据块的格式不同,存在一定的映射关系。
本发明实施例还提供一种应用程序运行系统,所述系统包括:客户端和服务器端。其中:
所述服务器端,用于保存应用程序所需的数据文件的各数据块;
所述客户端,用于创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从所述服务器端获取所述应用程序所需的数据块,并将所述数据块加载到内存。
在本发明实施例中,所述客户端可以是前面各实施例中的应用程序运行装置。
另外,所述客户端通过向所述服务器端发送数据文件请求从所述服务器端获取所述应用程序所需的数据块。相应地,所述服务器端,还用于接收到所述数据文件请求后,对所述请求进行验证并检测请求的数据文件是否存在;如果验证通过并且所述数据文件存在,则将所述数据文件发送给所述客户端。
本发明实施例应用程序运行系统,不需要对特别软件做专门定制,即可实现流式运行、按需下载,即客户端的用户终端只需安装软件完整版本的一部分文件,其余需要的文件以数据流的方式从服务器端下载,从而可以有效节省用户的磁盘空间。本发明实施例应用程序运行系统通用性强,对市面上大部分软件以及网络游戏均有较好效果。进一步地,还可以通过控制数据文件的下载来实现针对不同用户在功能使用上的限制。
以上对本发明实施例进行了详细介绍,本文中应用了具体实施方式对本发明进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及设备;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (18)

1.一种应用程序运行方法,其特征在于,包括:
创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;其中,所述应用程序的程序文件保存在本地;
通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;
如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块;所述数据块是所述数据文件中的一部分数据或全部数据;
将所述数据块加载到内存。
2.根据权利要求1所述的方法,其特征在于,所述加载预先生成的所述应用程序的数据文件描述信息包括:
从所述服务器端加载所述应用程序的数据文件描述信息。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在创建对应所述应用程序的进程之前,检查所述应用程序的数据文件描述信息是否保存在本地的指定目录;
如果是,则从所述指定目录加载所述数据文件描述信息;
如果否,则执行所述从所述服务器端加载所述应用程序的数据文件描述信息的步骤。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
抽取所述应用程序的数据文件,生成所述数据文件描述信息;
将所述数据文件描述信息保存到本地的指定目录和/或所述服务器端,并将所述数据文件保存到所述服务器端。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述通过所述进程监听所述应用程序的I/O请求包括:
通过所述进程加载I/O钩子函数;
通过所述I/O钩子函数在所述应用程序运行时监听所述应用程序的I/O请求。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述根据所述数据文件描述信息从所述服务器端获取所述应用程序所需的数据块包括:
根据所述数据文件描述信息检查所述数据文件是否存在;
如果所述数据文件存在,则向所述服务器端发送数据块下载请求;
接收所述服务器端下发的所述应用程序所需的数据块。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在向所述服务器端发送数据块下载请求之前,检查所述应用程序所需的数据块是否保存在本地的映射文件中;
如果是,则从所述映射文件中获取所述应用程序所需的数据块;
如果否,则执行向所述服务器端发送数据块下载请求的步骤。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收到所述服务器端下发的所述应用程序所需的数据块后,将所述数据块保存到所述映射文件中,并更新所述映射文件的头部信息;
所述检查所述应用程序所需的数据块是否保存在本地的映射文件中包括:通过检查所述映射文件的头部信息,确定所述应用程序所需的数据块是否保存在本地的映射文件中。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
服务器端接收到所述数据块下载请求后,对所述请求进行验证并检测请求的数据块是否存在;
如果验证通过并且所述数据块存在,则将所述数据块发送给请求方。
10.一种应用程序运行装置,其特征在于,包括:
进程创建单元,用于创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息;其中,所述应用程序的程序文件保存在本地;
监听单元,用于通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;
网络通信单元,用于在所述监听单元确定所述应用程序要访问的文件类型为数据文件后,根据所述数据文件描述信息从服务器端获取所述应用程序所需的数据块;所述数据块是所述数据文件中的一部分数据或全部数据;
加载单元,用于将所述数据块加载到内存。
11.根据权利要求10所述的装置,其特征在于,
网络通信单元,还用于从所述服务器端下载所述数据文件描述信息,并将所述数据文件描述信息发送给所述进程创建单元。
12.根据权利要求11所述的装置,其特征在于,
所述进程创建单元,还用于在创建对应所述应用程序的进程之前,检查所述应用程序的数据文件描述信息是否保存在本地的指定目录中;如果是,则从所述指定目录加载所述数据文件描述信息;如果不是,则向所述网络通信单元发送通知;
所述网络通信单元,还用于在接收到所述进程创建单元发送的通知后,从所述服务器端下载所述数据文件描述信息。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
数据文件抽取单元,用于抽取所述应用程序的数据文件,生成所述数据文件描述信息,将所述数据文件描述信息保存到本地的指定目录和/或所述服务器端,并将所述数据文件保存到所述服务器端。
14.根据权利要求10至13任一项所述的装置,其特征在于,所述网络通信单元包括:
第一检查子单元,用于在所述监听单元确定所述应用程序要访问的文件类型为数据文件后,根据所述数据文件描述信息检查所述数据文件是否存在;
请求子单元,用于在所述第一检查子单元检查到所述数据文件存在后,向所述服务器端发送数据块下载请求;
接收子模块,用于接收所述服务器端下发的所述应用程序所需的数据块。
15.根据权利要求14所述的装置,其特征在于,所述网络通信单元还包括:
第二检查子单元,用于在向所述服务器端发送数据块下载请求之前,进一步检查所述应用程序所需的数据块是否保存在本地的映射文件中;如果是,则向提取子单元发送通知;如果否,则向所述请求子单元发送通知;
提取子单元,用于在收到所述第二检查子单元发送的通知后,从所述映射文件中获取所述应用程序所需的数据块;
所述请求子单元,具体用于在所述第一检查子单元检查到所述数据文件存在且收到所述第二检查子单元发送的通知后,向所述服务器端发送数据块下载请求。
16.一种应用程序加载系统,其特征在于,包括:客户端和服务器端;
所述服务器端,用于保存应用程序所需的数据文件的各数据块;
所述客户端,用于创建对应所述应用程序的进程,并加载预先生成的所述应用程序的数据文件描述信息,其中,所述应用程序的程序文件保存在本地;通过所述进程监听所述应用程序的I/O请求,并在监听到所述应用程序的I/O请求后,根据所述I/O请求确定所述应用程序要访问的文件类型;如果所述应用程序要访问的文件类型为数据文件,则根据所述数据文件描述信息从所述服务器端获取所述应用程序所需的数据块,并将所述数据块加载到内存;所述数据块是所述数据文件中的一部分数据或全部数据。
17.根据权利要求16所述的系统,其特征在于,
所述客户端通过向所述服务器端发送数据文件请求从所述服务器端获取所述应用程序所需的数据块;
所述服务器端,还用于接收到所述数据文件请求后,对所述请求进行验证并检测请求的数据文件是否存在;
如果验证通过并且所述数据文件存在,则将所述数据文件发送给所述客户端。
18.根据权利要求16或17所述的系统,其特征在于,所述客户端为权利要求10至15任一项所述的应用程序运行装置。
CN201010100336.7A 2010-01-22 2010-01-22 应用程序运行方法、装置及系统 Active CN102135892B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201010100336.7A CN102135892B (zh) 2010-01-22 2010-01-22 应用程序运行方法、装置及系统
PCT/CN2010/079860 WO2011088714A1 (zh) 2010-01-22 2010-12-16 应用程序运行方法、装置及系统
US13/574,469 US9256414B2 (en) 2010-01-22 2010-12-16 Method, device and system for running application
JP2012549238A JP5658283B2 (ja) 2010-01-22 2010-12-16 アプリケーションの稼働方法、装置及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010100336.7A CN102135892B (zh) 2010-01-22 2010-01-22 应用程序运行方法、装置及系统

Publications (2)

Publication Number Publication Date
CN102135892A CN102135892A (zh) 2011-07-27
CN102135892B true CN102135892B (zh) 2015-03-04

Family

ID=44295686

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010100336.7A Active CN102135892B (zh) 2010-01-22 2010-01-22 应用程序运行方法、装置及系统

Country Status (4)

Country Link
US (1) US9256414B2 (zh)
JP (1) JP5658283B2 (zh)
CN (1) CN102135892B (zh)
WO (1) WO2011088714A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399696B (zh) 2007-09-24 2011-09-21 国际商业机器公司 通过网络为客户机安装软件的方法、系统及相应的客户机
CN103108320A (zh) * 2011-11-15 2013-05-15 网秦无限(北京)科技有限公司 一种监控移动设备的应用程序的方法和系统
CN102621432B (zh) * 2012-04-11 2014-02-05 北京四方继保自动化股份有限公司 一种继电保护装置单板自动测试方法
US9977596B2 (en) * 2012-12-27 2018-05-22 Dropbox, Inc. Predictive models of file access patterns by application and file type
CN104065625B (zh) * 2013-03-21 2018-07-03 联想(北京)有限公司 应用试用方法及装置
CN103546806B (zh) * 2013-10-16 2017-04-05 小米科技有限责任公司 一种功能列表的生成方法和装置
CN105718458A (zh) * 2014-12-02 2016-06-29 阿里巴巴集团控股有限公司 一种确定数据文件存在的方法、装置及系统
JP6529304B2 (ja) * 2015-03-25 2019-06-12 株式会社日立ソリューションズ アクセス制御システム及びアクセス制御方法
CN105513317A (zh) * 2015-12-11 2016-04-20 中南大学 一种基于透明计算的智能遥控器控制方法
CN106909353B (zh) * 2015-12-22 2019-12-13 阿里巴巴集团控股有限公司 应用程序的运行方法和装置
CN108089890B (zh) * 2016-11-21 2019-09-20 杨正 一种基于磁盘的应用运行方法及系统
CN108089888B (zh) * 2016-11-21 2019-09-13 杨正 一种基于文件系统的应用运行方法及系统
CN108229112B (zh) * 2016-12-22 2022-06-03 阿里巴巴集团控股有限公司 一种保护应用程序、应用程序的运行方法以及装置
US20200004522A1 (en) * 2018-06-27 2020-01-02 Hewlett Packard Enterprise Development Lp Selective download of a portion of a firmware bundle
CN108897546A (zh) * 2018-07-03 2018-11-27 北京五八信息技术有限公司 监控apk大小的方法、装置、设备及可读存储介质
CN109165050B (zh) * 2018-07-05 2020-10-13 腾讯科技(深圳)有限公司 程序的运行方法、装置、计算设备以及存储介质
CN109359092B (zh) * 2018-09-27 2023-05-26 腾讯科技(深圳)有限公司 文件管理方法、桌面显示方法、装置、终端及介质
CN109492350A (zh) * 2018-11-09 2019-03-19 郑州云海信息技术有限公司 一种软件演示程序构造方法、系统、设备及计算机介质
CN111475171B (zh) * 2019-01-23 2024-04-12 阿里巴巴集团控股有限公司 应用程序组件下载方法、装置、电子设备
CN110609715A (zh) * 2019-08-13 2019-12-24 平安国际智慧城市科技股份有限公司 随机选项页面展示方法、装置、计算机设备和存储介质
CN110765394A (zh) * 2019-09-20 2020-02-07 中国平安人寿保险股份有限公司 so文件加载方法、装置、存储介质及终端设备
KR102446933B1 (ko) * 2022-02-23 2022-09-26 프라이빗테크놀로지 주식회사 애플리케이션의 파일 송신 및 수신을 제어하기 위한 시스템 및 그에 관한 방법
KR102495370B1 (ko) * 2022-04-28 2023-02-06 프라이빗테크놀로지 주식회사 프록시에 기반하여 애플리케이션의 파일 송신 및 수신을 제어하기 위한 시스템 및 그에 관한 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101354660A (zh) * 2008-09-12 2009-01-28 北京中星微电子有限公司 嵌入式软件程序的运行方法、装置及其系统
CN101452402A (zh) * 2008-11-28 2009-06-10 珠海金山软件股份有限公司 软件运行系统和软件运行方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5644751A (en) * 1994-10-03 1997-07-01 International Business Machines Corporation Distributed file system (DFS) cache management based on file access characteristics
JP2001350657A (ja) * 2000-06-05 2001-12-21 Sony Corp 情報処理装置、情報処理方法
JP2001350464A (ja) * 2000-06-07 2001-12-21 Nec Corp 文字フォント登録システム及びそれに用いる文字フォント登録方法
US6941351B2 (en) * 2000-07-11 2005-09-06 Microsoft Corporation Application program caching
US6959320B2 (en) * 2000-11-06 2005-10-25 Endeavors Technology, Inc. Client-side performance optimization system for streamed applications
FR2821191B1 (fr) * 2001-02-19 2003-04-04 Schneider Automation Station de programmation elaborant un programme en langage unique et equipement d'automatisme utilisant un tel programme
CN1434402A (zh) * 2002-01-21 2003-08-06 中国科学院研究生院 基于url的远程图象文件描述服务的方法和系统
JP2004240802A (ja) * 2003-02-07 2004-08-26 Sony Corp データ処理システム及びデータ処理方法、並びにコンピュータ・プログラム
US20050071477A1 (en) * 2003-03-27 2005-03-31 Microsoft Corporation Providing information links via a network
US7735057B2 (en) * 2003-05-16 2010-06-08 Symantec Corporation Method and apparatus for packaging and streaming installation software
US20050003810A1 (en) * 2003-05-28 2005-01-06 Sun Microsystems, Inc. Method and system for optimizing software program start-up time
JP2005092552A (ja) * 2003-09-18 2005-04-07 Toshiba Solutions Corp 情報処理端末、情報処理方法及び情報処理プログラム
US20050065953A1 (en) * 2003-09-19 2005-03-24 Bower Shelley K. System and method for changing defined elements in a previously compiled program using a description file
US7725716B2 (en) * 2004-06-28 2010-05-25 Japan Communications, Inc. Methods and systems for encrypting, transmitting, and storing electronic information and files
US20060048136A1 (en) * 2004-08-25 2006-03-02 Vries Jeff D Interception-based resource detection system
US20060136389A1 (en) * 2004-12-22 2006-06-22 Cover Clay H System and method for invocation of streaming application
US20060225047A1 (en) * 2005-04-05 2006-10-05 William Brothers Generic software requirements analyzer
JP4442902B2 (ja) * 2005-07-06 2010-03-31 キヤノン株式会社 情報処理装置とその方法及びプログラム
JP4984612B2 (ja) * 2006-04-10 2012-07-25 ブラザー工業株式会社 インストーラパッケージ
US7681138B2 (en) * 2006-07-11 2010-03-16 Siemens Aktiengesellschaft Use of a reusable control software whose user interface and communication connection are established via an external description-based configuration at run time
US20130047150A1 (en) * 2006-08-29 2013-02-21 Adobe Systems Incorporated Software installation and process management support
EP1901190A1 (en) * 2006-09-15 2008-03-19 Sony DADC Austria AG Method and system for managing access to add-on data files
US20080295110A1 (en) * 2007-05-23 2008-11-27 Fabrizio Muscarella Framework for Startup of Local Instance of Remote Application
CN101399696B (zh) 2007-09-24 2011-09-21 国际商业机器公司 通过网络为客户机安装软件的方法、系统及相应的客户机
JP5303172B2 (ja) * 2008-03-28 2013-10-02 Necパーソナルコンピュータ株式会社 情報処理装置、ファイル制御システム、制御方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101354660A (zh) * 2008-09-12 2009-01-28 北京中星微电子有限公司 嵌入式软件程序的运行方法、装置及其系统
CN101452402A (zh) * 2008-11-28 2009-06-10 珠海金山软件股份有限公司 软件运行系统和软件运行方法

Also Published As

Publication number Publication date
WO2011088714A1 (zh) 2011-07-28
CN102135892A (zh) 2011-07-27
JP2013517578A (ja) 2013-05-16
JP5658283B2 (ja) 2015-01-21
US9256414B2 (en) 2016-02-09
US20120297034A1 (en) 2012-11-22

Similar Documents

Publication Publication Date Title
CN102135892B (zh) 应用程序运行方法、装置及系统
CN107729352B (zh) 页面资源加载方法及终端设备
US11294983B2 (en) Inferred user identity in content distribution
US10140113B2 (en) Data processing method and device of preset application after upgrading
CN104216700B (zh) 基于云计算的html5应用的打包、安装、卸载、运行方法的系统
US20080147671A1 (en) System for Running Web Applications Offline and Providing Access to Native Services
CN104049986B (zh) 插件加载方法及装置
US10521447B2 (en) Container application execution using image metadata
US8296758B2 (en) Deployment and versioning of applications
US20190034243A1 (en) Using scripts to bootstrap applications with metadata from a template
US10579592B2 (en) Method and apparatus for compressing an application
KR20130101645A (ko) 콘텐츠 필터링 장치 및 방법
CN109918911B (zh) 一种镜像安装包信息的扫描方法及设备
CN107528718B (zh) 获取资源的方法、装置和系统
CN111897623B (zh) 一种集群管理方法、装置、设备及存储介质
CN104361007B (zh) 浏览器及其收藏夹的处理方法
KR102275179B1 (ko) 클라우드 스트리밍 서비스 기반의 웹 서버 모니터링 방법 및 이를 위한 장치
US9350738B2 (en) Template representation of security resources
CN109214855A (zh) 素材接收方法、装置及系统
CN110191176B (zh) 一种快速电子取证方法及系统
CN104468769A (zh) 进行网络数据内容获取的方法、装置、客户端和系统
US9665732B2 (en) Secure Download from internet marketplace
CA2930061C (en) Variants of files in a file system
CN104363237A (zh) 一种互联网媒体资源元数据的处理方法及其系统
RU2595763C2 (ru) Способ и устройство менеджмента загрузки на базе браузера android

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EE01 Entry into force of recordation of patent licensing contract

Assignee: Beijing Jinshan Software Co., Ltd.|Beijing Jinshan Digital Entertainment Technology Co., Ltd.|Zhuhai Jinshan Software Co., Ltd.

Assignor: Zhuhai Jinshan Kuaikuai Technology Co.,Ltd.

Contract record no.: 2011110000161

Denomination of invention: Application program running method, device and system

License type: Common License

Open date: 20110727

Record date: 20110914

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: BEIJING JINSHAN SOFTWARE CO., LTD.

Free format text: FORMER OWNER: ZHUHAI KINGSOFT KUAIKUAI TECHNOLOGY CO., LTD.

Effective date: 20130709

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 519080 ZHUHAI, GUANGDONG PROVINCE TO: 100083 HAIDIAN, BEIJING

TA01 Transfer of patent application right

Effective date of registration: 20130709

Address after: Kingsoft 33 Building No. 100083 Beijing Haidian District City 1 Xiaoying Road West

Applicant after: Beijing Jinshan Software Co., Ltd.

Address before: Sixth, 622F 519080, main building, No. 10, science and technology road, Harbour Road, Tang Wan Town, Guangdong, Zhuhai

Applicant before: Zhuhai Jinshan Kuaikuai Technology Co.,Ltd.

ASS Succession or assignment of patent right

Owner name: GUANGZHOU CHINADUO NETWORK TECHNOLOGY CO.,LTD.

Free format text: FORMER OWNER: BEIJING JINSHAN SOFTWARE CO., LTD.

Effective date: 20130724

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100083 HAIDIAN, BEIJING TO: 510660 GUANGZHOU, GUANGDONG PROVINCE

TA01 Transfer of patent application right

Effective date of registration: 20130724

Address after: Four building, No. 44, Jianzhong Road, Guangzhou, Guangdong, Tianhe District 510660, China

Applicant after: Guangzhou Huaduo Network Technology Co., Ltd.

Address before: Kingsoft 33 Building No. 100083 Beijing Haidian District City 1 Xiaoying Road West

Applicant before: Beijing Jinshan Software Co., Ltd.

EC01 Cancellation of recordation of patent licensing contract

Assignee: Beijing Jinshan Software Co., Ltd.|Beijing Jinshan Digital Entertainment Technology Co., Ltd.|Zhuhai Jinshan Software Co., Ltd.

Assignor: Zhuhai Jinshan Kuaikuai Technology Co.,Ltd.

Contract record no.: 2011110000161

Date of cancellation: 20131212

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20110727

Assignee: Beijing Jinshan Software Co., Ltd.

Assignor: Guangzhou Huaduo Network Technology Co., Ltd.

Contract record no.: 2014990000039

Denomination of invention: Application program running method, device and system

License type: Common License

Record date: 20140121

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP02 Change in the address of a patent holder

Address after: 511446 Guangzhou City, Guangdong Province, Panyu District, South Village, Huambo Business District Wanda Plaza, block B1, floor 28

Patentee after: Guangzhou Huaduo Network Technology Co., Ltd.

Address before: Four building, No. 44, Jianzhong Road, Guangzhou, Guangdong, Tianhe District 510660, China

Patentee before: Guangzhou Huaduo Network Technology Co., Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210118

Address after: 510000 3108, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee after: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 511446 28th floor, block B1, Wanda Plaza, Wanbo business district, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20110727

Assignee: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

Assignor: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2021440000053

Denomination of invention: Application program running method, device and system

Granted publication date: 20150304

License type: Common License

Record date: 20210208