CN108228246B - 一种应用安装包的生成方法及装置 - Google Patents

一种应用安装包的生成方法及装置 Download PDF

Info

Publication number
CN108228246B
CN108228246B CN201611154765.6A CN201611154765A CN108228246B CN 108228246 B CN108228246 B CN 108228246B CN 201611154765 A CN201611154765 A CN 201611154765A CN 108228246 B CN108228246 B CN 108228246B
Authority
CN
China
Prior art keywords
installation package
target
file
source information
information
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
CN201611154765.6A
Other languages
English (en)
Other versions
CN108228246A (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 Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum 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 Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201611154765.6A priority Critical patent/CN108228246B/zh
Publication of CN108228246A publication Critical patent/CN108228246A/zh
Application granted granted Critical
Publication of CN108228246B publication Critical patent/CN108228246B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种应用安装包的生成方法及装置,方法包括:接收应用安装包下载请求,所述下载请求中至少包括下载请求的来源信息及所请求下载的安装包信息;获得与所述安装包信息相对应的目标安装文件,所述目标安装文件为预先生成的安装包解压后的安装文件;将所述来源信息添加到所述目标安装文件中;将添加有所述来源信息的目标安装文件进行打包,得到目标安装包;将所述目标安装包进行返回,使得所述目标安装包在启动时所述来源信息能够被读取。

Description

一种应用安装包的生成方法及装置
技术领域
本发明涉及软件应用技术领域,特别涉及一种应用安装包的生成方法及装置。
背景技术
随着互联网的发展,各种各样功能的应用越来越多的为用户提供服务,如购物应用、旅行应用及缴费应用等。用户可以通过各种网站下载这些应用的应用安装包,应用供应商在为用户生成安装包的同时将下载请求的来源信息如用户所利用的下载网站信息等添加到安装包中,用以后续根据安装包中的来源信息进行数据分析,如下载渠道的种类及用量等。
而现有技术中,应用提供商的服务器在为用户生成安装包时,通常需要对每个用户的下载请求都要基于用户的请求来源生成一个应用安装包,多个下载来源需要生成多个安装包,例如10来源就需要生成10个安装包,由此降低安装包的生成效率。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服或者至少部分地解决降低安装包的生成效率的技术问题。
有鉴于此,本申请提供了一种应用安装包的生成方法,包括:
接收应用安装包下载请求,所述下载请求中至少包括下载请求的来源信息及所请求下载的安装包信息;
获得与所述安装包信息相对应的目标安装文件,所述目标安装文件为预先生成的安装包解压后的安装文件;
将所述来源信息添加到所述目标安装文件中;
将添加有所述来源信息的目标安装文件进行打包,得到目标安装包;
将所述目标安装包进行返回,使得所述目标安装包在启动时所述来源信息能够被读取。
上述方法,优选的,所述将所述来源信息添加到所述目标安装文件中,包括:
在所述目标安装文件中生成文本文件;
将所述来源信息存储到所述文本文件中。
上述方法,优选的,将所述来源信息存储到所述文本文件中,包括:
将所述来源信息进行MD5处理,得到目标来源信息;
将所述目标来源信息存储到所述文本文件中。
上述方法,优选的,所述方法还包括:
将所述目标安装包进行保存;
其中,在接收安装包下载请求之后,在获得与所述安装包信息相对应的目标安装文件之前,所述方法还包括:
在已经保存的安装包中,查找是否存在与所述下载请求中的来源信息相对应的安装包,如果存在,将查找到的安装包作为目标安装包进行返回,如果不存在,执行所述获得与所述安装包信息相对应的目标安装文件。
上述方法,优选的,在得到目标安装包之后,在将所述目标安装包进行返回之前,所述方法还包括:
利用预先设置的密匙库对所述目标安装包进行签名。
本申请还提供了一种应用安装包的生成装置,包括:
请求接收单元,用于接收应用安装包下载请求,所述下载请求中至少包括下载请求的来源信息及所请求下载的安装包信息;
文件获得单元,用于获得与所述安装包信息相对应的目标安装文件,所述目标安装文件为预先生成的安装包解压后的安装文件;
来源添加单元,用于将所述来源信息添加到所述目标安装文件中;
文件打包单元,用于将添加有所述来源信息的目标安装包进行打包,得到目标安装包;
目标返回单元,用于将所述目标安装包进行返回,使得所述目标安装包在启动时所述来源信息能够被读取。
上述装置,优选的,所述来源添加单元包括:
文本生成子单元,用于在所述目标安装文件中生成文本文件;
信息存储子单元,用于将所述来源信息存储到所述文本文件中。
上述装置,优选的,所述信息存储子单元具体用于:将所述来源信息进行MD5处理,得到目标来源信息,将所述目标来源信息存储到所述文本文件中。
上述装置,优选的,还包括:
目标保存单元,用于将所述目标安装包进行保存;
安装包查找单元,用于在所述请求接收单元接收应用安装包下载请求之后,在所述文件获得单元获得与所述安装包信息相对应的目标安装文件之前,在已经保存的安装包中,查找是否存在与所述下载请求中的来源信息相对应的安装包,如果存在,将查找到的安装包作为目标安装包进行返回,如果不存在,触发所述文件获得单元获得与所述安装包信息相对应的目标安装文件。
上述装置,优选的,还包括:
密匙签名单元,用于在所述文件打包单元得到目标安装包之后,在所述目标返回单元将所述目标安装包进行返回之前,利用预先设置的密匙库对所述目标安装包进行签名。
借由上述技术方案,本发明提供的一种应用安装包的生成方法及装置,通过在预先生成的安装包的解压安装文件中添加来源信息,再打包得到用户所请求下的目标安装包,再将安装包返回给用户,这一过程中,不需要针对不同来源的下载请求都做一次安装包的生成操作,只需要预先生成一次安装包,并在用户需要进行下载时,对解压后的安装包进行来源信息的添加及打包操作,即可得到目标安装包,对于不同来源的下载请求只做安装包的信息添加及打包等操作,节省多次生成安装包的操作,由此提高安装包的生成效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请提供的一种应用安装包的生成方法的流程图;
图2,为本申请实施例提供的一种应用安装包的生成方法的另一流程图;
图3为本申请实施例提供的一种应用安装包的生成装置的结构示意图;
图4为本申请实施例提供的一种应用安装包的生成装置的部分结构示意图;
图5为本申请实施例提供的一种应用安装包的生成装置的另一结构示意图;
图6为本申请实施例提供的一种应用安装包的生成装置的又一结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参考图1,为本申请提供的一种应用安装包的生成方法的实现流程图,为用户提供应用的安装包,如购物应用、聊天应用或视频应用的安装包,本实施例中的方法适用于应用服务器中,服务器中提供配置文件,配置文件中包含有安装包的文件路径、安装包的文件名、安装包的签名密匙库、安装包的签名密匙库密码、安装包的签名密匙库别名等,用以对用户的下载请求进行响应。
在本实施例中,该方法具体可以包括以下步骤:
步骤101:接收应用安装包的下载请求。
其中,这里的下载请求是指用户通过终端进行操作生成,发送给应用服务器的请求,由本实施例对这一下载请求进行接收。该下载请求中至少包括有:下载请求的来源信息及所请求下载的安装包信息。
需要说明的是,该来源信息是指用户发出下载请求的途径,如通过某个应用商城或某个网站发出下载请求时,这里的应用商城或网站即为下载途径,该来源信息表明这个途径的特征。而下载请求中的安装包信息表明用户所需要下载的应用安装包的信息,如安装包的文件名和/或安装包的文件路径等。
其中,用户在终端生成下载请求时,可以在下载链接中加入来源信息,如在下载链接“http://www.baidu.com/test.apk?utm_source=baidu”中添加来源信息,其中“?”后面的“utm_source=baidu”即为添加的来源信息,这个来源信息表明下载途径是“baidu”,或者,如在下载链接“http://www.baidu.com/test.apk?a=b&c=d&e=f”中添加来源信息,其中“?”后面的“a=b&c=d&e=f”即为添加的来源信息;另外,也可以手动设置来源信息。
步骤102:获得与安装包信息相对应的目标安装文件。
其中,该目标安装文件为预先生成的安装包解压后的安装文件。也就是说,本实施例在需要生成安装包时,是基于预先生成的安装包经过解压之后的安装文件得到的。
需要说明的是,这些预先生成的安装包是指服务器中不包含任何来源信息(或参数)的安装包。
具体的,本实施例中首先获得与安装包信息相对应的预先生成的安装包,再对这个预先生成的安装包进行解压,得到目标安装文件;或者,服务器可以预先根据配置文件进行初始化,将安装包进行解压,得到解压后安装文件,本实施例中直接获得与安装包信息相对应的目标安装文件。
步骤103:将来源信息添加到目标安装文件中。
具体的,本实施例中在将来源信息添加到目标安装文件中时,可以通过以下方式实现:
首先,在目标安装文件中生成文本文件:具体可以在目标安装文件中新建或已经存在的assets文件夹中生成这个文本文件,这个文本文件可以为download_origin.txt的文本文件;
然后,将来源信息存储到这个download_origin.txt的文本文件中。
步骤104:将添加有来源信息的目标安装文件进行打包,得到目标安装包。
也就是说,将包含有download_origin.txt的文本文件的目标安装文件重新进行打包,打包成目标安装文件。
需要说明的是,在得到目标安装包之后,还可以利用配置文件中的密匙库重新对目标安装包进行签名。
步骤105:将目标安装包进行返回,使得目标安装包在启动时来源信息能够被读取。
本实施例中通过将目标安装包进行返回,提供给用户进行下载并在终端本地进行缓存。而用户在将下载得到的目标安装包进行启动时,会产生并在终端上安装相应的目标应用,而目标应用能够读取assets下的download_origin.txt的文本文件,进而获取到download_origin.txt的文本文件中的来源信息。
由上述技术方案可知,本申请实施例提供的一种应用安装包的生成方法,通过在预先生成的安装包的解压安装文件中添加来源信息,再打包得到用户所请求下的目标安装包,再将安装包返回给用户,这一过程中,首先,不需要在安装包的配置文件中预设来源信息,不需要针对不同来源的下载请求都做一次安装包的生成操作,只需要预先生成一次安装包,因此生成安装包的速度比多个来源快,之后在用户需要进行下载时,对解压后的安装包进行来源信息的添加及打包操作,即可得到目标安装包,对于不同来源的下载请求只做安装包的信息添加及打包等操作,节省多次生成安装包的操作,由此提高安装包的生成效率。
其次,可以动态的将真正的来源信息写入到安装包中,比如通过**搜索或广告推荐进入官网进行下载,这些“途径”可以直观在安装包安装得到的应用启动时呈现,因此,本申请实施例可以动态生成不同来源的安装包,使得来源更加真实有价值,同时也不需要预先根据来源个数生成多个安装包。
进一步的,本实施例中的服务器中对于一种应用,只存储一个预先生成的安装包或解压后的安装文件,节省服务器的存储空间。
在一种实现中,本实施例在将来源信息存储到这个download_origin.txt的文本文件中时,可以首先将来源信息进行MD5即Message Digest Algorithm5处理,由此得到具有唯一性的目标来源信息,也可以称为这个来源信息的唯一码,最后再将这个唯一码存储到download_origin.txt的文本文件中。而这个唯一码会呈现在返回给用户的目标安装包中,如test_{MD5}.apk。
基于以上方案,参考图2,为本申请实施例提供的一种应用安装包的生成方法的另一流程图,在步骤104之后,该方法还可以包括以下步骤:
步骤106:将目标安装包进行保存。
也就是说,将目标安装包缓存到服务器本地。
而在步骤101之后,在步骤102之前,该方法还可以包括以下步骤:
步骤107:在已经保存的安装包中,查找是否存在与下载请求中的来源信息相对应的安装包,如果存在,执行步骤108,如果不存在,执行步骤102及后续步骤。
本实施例中可以基于上述实例中的安装包的唯一码在已经保存的安装包中查找与来源信息相对应的安装包。
步骤108:将查找到的安装包作为目标安装包进行返回。
需要说明的是,如果在已经保存的安装包中查找到目标安装包时,不需要再次将目标安装包进行本地缓存。
也就是说,本实施例中利用安装包的唯一码将各种包含来源信息的安装包在服务器本地进行无重复缓存,防止生成重复来源的安装包。
而本实施例中通过在服务器本地缓存包含各种来源信息的安装包,进而在有重复来源的下载请求到来时,可以直接将该来源对应的安装包返回给用户下载,跳过解压、添加来源信息、压缩及签名等步骤,更进一步节省操作,提高安装包返回给用户的效率。
参考图3,为本申请实施例提供的一种应用安装包的生成装置的结构示意图,为用户提供应用的安装包,如购物应用、聊天应用或视频应用的安装包,本实施例中的装置适用于应用服务器中,服务器中提供配置文件,配置文件中包含有安装包的文件路径、安装包的文件名、安装包的签名密匙库、安装包的签名密匙库密码、安装包的签名密匙库别名等,用以对用户的下载请求进行响应。
在本实施例中,该装置可以包括以下结构:
请求接收单元301,用于接收应用安装包下载请求。
其中,这里的下载请求是指用户通过终端进行操作生成,发送给应用服务器的请求,由本实施例对这一下载请求进行接收。该下载请求中至少包括有:下载请求的来源信息及所请求下载的安装包信息。
需要说明的是,该来源信息是指用户发出下载请求的途径,如通过某个应用商城或某个网站发出下载请求时,这里的应用商城或网站即为下载途径,该来源信息表明这个途径的特征。而下载请求中的安装包信息表明用户所需要下载的应用安装包的信息,如安装包的文件名和/或安装包的文件路径等。
其中,用户在终端生成下载请求时,可以在下载链接中加入来源信息,如在下载链接“http://www.baidu.com/test.apk?utm_source=baidu”中添加来源信息,其中“?”后面的“utm_source=baidu”即为添加的来源信息,这个来源信息表明下载途径是“baidu”,或者,如在下载链接“http://www.baidu.com/test.apk?a=b&c=d&e=f”中添加来源信息,其中“?”后面的“a=b&c=d&e=f”即为添加的来源信息;另外,也可以手动设置来源信息。
文件获得单元302,用于获得与安装包信息相对应的目标安装文件。
其中,该目标安装文件为预先生成的安装包解压后的安装文件。也就是说,本实施例在需要生成安装包时,是基于预先生成的安装包经过解压之后的安装文件得到的。
需要说明的是,这些预先生成的安装包是指服务器中不包含任何来源信息(或参数)的安装包。
具体的,本实施例中首先获得与安装包信息相对应的预先生成的安装包,再对这个预先生成的安装包进行解压,得到目标安装文件;或者,服务器可以预先根据配置文件进行初始化,将安装包进行解压,得到解压后安装文件,本实施例中直接获得与安装包信息相对应的目标安装文件。
来源添加单元303,用于将来源信息添加到目标安装文件中。
具体的,本实施例中,来源添加单元303在将来源信息添加到目标安装文件中时,可以通过以下结构实现,如图4中所示:
文本生成子单元401,用于在目标安装文件中生成文本文件。
具体的,文本生成子单元401可以在目标安装文件中新建或已经存在的assets文件夹中生成这个文本文件,这个文本文件可以为download_origin.txt的文本文件。
信息存储子单元402,用于将来源信息存储到这个download_origin.txt的文本文件中。
文件打包单元304,用于将添加有所述来源信息的目标安装包进行打包,得到目标安装包。
也就是说,将包含有download_origin.txt的文本文件的目标安装文件重新进行打包,打包成目标安装文件。
目标返回单元305,用于将目标安装包进行返回,使得目标安装包在启动时来源信息能够被读取。
本实施例中通过将目标安装包进行返回,提供给用户进行下载并在终端本地进行缓存。而用户在将下载得到的目标安装包进行启动时,会产生并在终端上安装相应的目标应用,而目标应用能够读取assets下的download_origin.txt的文本文件,进而获取到download_origin.txt的文本文件中的来源信息。
在本实施例中,该装置可以包括有处理器及存储器,处理器及存储器为服务器上的元器件,上述的请求接收单元301、文件获得单元302、来源添加单元303、文件打包单元304及目标返回单元305等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
例如,上述各个程序单元以安装包处理类的形式存储在存储器中,同时存储器中还存储有服务器预先设置的配置文件,处理器通过调用安装包处理类,来执行以上各个程序单元,实现相应的功能。
具体的,处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来在预先生成的安装包的解压安装文件中添加来源信息,再打包得到用户所请求下的目标安装包,再将安装包返回给用户。
其中,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
由上述技术方案可知,本申请实施例提供的一种应用安装包的生成方法,通过在预先生成的安装包的解压安装文件中添加来源信息,再打包得到用户所请求下的目标安装包,再将安装包返回给用户,这一过程中,首先,不需要在安装包的配置文件中预设来源信息,不需要针对不同来源的下载请求都做一次安装包的生成操作,只需要预先生成一次安装包,因此生成安装包的速度比多个来源快,之后在用户需要进行下载时,对解压后的安装包进行来源信息的添加及打包操作,即可得到目标安装包,对于不同来源的下载请求只做安装包的信息添加及打包等操作,节省多次生成安装包的操作,由此提高安装包的生成效率。
其次,可以动态的将真正的来源信息写入到安装包中,比如通过**搜索或广告推荐进入官网进行下载,这些“途径”可以直观在安装包安装得到的应用启动时呈现,因此,本申请实施例可以动态生成不同来源的安装包,使得来源更加真实有价值,同时也不需要预先根据来源个数生成多个安装包。
进一步的,本实施例中的服务器中对于一种应用,只存储一个预先生成的安装包或解压后的安装文件,节省服务器的存储空间。
需要说明的是,如图5中所示,本实施例中的装置还可以包括以下结构:
密匙签名单元306,用于在文件打包单元304得到目标安装包之后,可以利用配置文件中预先设置的密匙库重新对目标安装包进行签名,再由目标返回单元305将签名的目标安装包返回给用户进行下载。
在一种实现中,本实施例中的信息存储子单元402在将来源信息存储到这个download_origin.txt的文本文件中时,可以首先将来源信息进行MD5处理,由此得到具有唯一性的目标来源信息,也可以称为这个来源信息的唯一码,最后再将这个唯一码存储到download_origin.txt的文本文件中。而这个唯一码会呈现在返回给用户的目标安装包中,如test_{MD5}.apk。
基于上述方案,参考图6,为本申请实施例提供的一种应用安装包的生成装置的另一结构示意图,该装置还可以包括以下结构:
目标保存单元307,用于将目标安装包进行保存。
也就是说,目标保存单元307将目标安装包缓存到服务器本地。
安装包查找单元308,用于在请求接收单元301接收应用安装包下载请求之后,在文件获得单元302获得与安装包信息相对应的目标安装文件之前,在已经保存的安装包中,查找是否存在与下载请求中的来源信息相对应的安装包,如果存在,将查找到的安装包作为目标安装包进行返回,如果不存在,触发文件获得单元302获得与所述安装包信息相对应的目标安装文件。
本实施例中可以基于上述实例中的安装包的唯一码在已经保存的安装包中查找与来源信息相对应的安装包。
需要说明的是,如果在已经保存的安装包中查找到目标安装包时,不需要再次将目标安装包进行本地缓存。
也就是说,本实施例中利用安装包的唯一码将各种包含来源信息的安装包在服务器本地进行无重复缓存,防止生成重复来源的安装包。
而本实施例中通过在服务器本地缓存包含各种来源信息的安装包,进而在有重复来源的下载请求到来时,可以直接将该来源对应的安装包返回给用户下载,跳过解压、添加来源信息、压缩及签名等步骤,更进一步节省操作,提高安装包返回给用户的效率。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:接收应用安装包下载请求,下载请求中至少包括下载请求的来源信息及所请求下载的安装包信息;获得与安装包信息相对应的目标安装文件,目标安装文件为预先生成的安装包解压后的安装文件;将来源信息添加到目标安装文件中;将添加有来源信息的目标安装文件进行打包,得到目标安装包;将目标安装包进行返回,使得目标安装包在启动时来源信息能够被读取。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (8)

1.一种应用安装包的生成方法,其特征在于,包括:
接收应用安装包下载请求,所述下载请求中至少包括下载请求的来源信息及所请求下载的安装包信息;所述来源信息为用户发出所述下载请求的途径;
在已经保存的安装包中,查找是否存在与所述下载请求中的来源信息相对应的安装包;若存在,则查找到的安装包作为目标安装包进行返回;所述目标安装包与所述安装包信息相对应;
如果不存在,则获得与所述安装包信息相对应的目标安装文件,所述目标安装文件为预先生成的安装包解压后的安装文件;所述预先生成的安装包为服务器中不含任何来源信息的安装包;
将所述来源信息添加到所述目标安装文件中;
将添加有所述来源信息的目标安装文件进行打包,得到目标安装包并保存所述目标安装包;
将所述目标安装包进行返回,使得所述目标安装包在启动时所述来源信息能够被读取。
2.根据权利要求1所述的方法,其特征在于,所述将所述来源信息添加到所述目标安装文件中,包括:
在所述目标安装文件中生成文本文件;
将所述来源信息存储到所述文本文件中。
3.根据权利要求2所述的方法,其特征在于,将所述来源信息存储到所述文本文件中,包括:
将所述来源信息进行信息-摘要算法5MD5处理,得到目标来源信息;
将所述目标来源信息存储到所述文本文件中。
4.根据权利要求1或2所述的方法,其特征在于,在得到目标安装包之后,在将所述目标安装包进行返回之前,所述方法还包括:
利用预先设置的密匙库对所述目标安装包进行签名。
5.一种应用安装包的生成装置,其特征在于,包括:
请求接收单元,用于接收应用安装包下载请求,所述下载请求中至少包括下载请求的来源信息及所请求下载的安装包信息;所述来源信息为用户发出所述下载请求的途径;
安装包查找单元,用于在所述请求接收单元接收应用安装包下载请求之后,在已经保存的安装包中,查找是否存在与所述下载请求中的来源信息相对应的安装包,如果存在,将查找到的安装包作为目标安装包进行返回,如果不存在,触发文件获得单元获得与所述安装包信息相对应的目标安装文件;其中,所述目标安装包与所述安装包信息相对应;
文件获得单元,用于获得与所述安装包信息相对应的目标安装文件,所述目标安装文件为预先生成的安装包解压后的安装文件;
来源添加单元,用于将所述来源信息添加到所述目标安装文件中;
文件打包单元,用于将添加有所述来源信息的目标安装包进行打包,得到目标安装包;
目标保存单元,用于将所述目标安装包进行保存;
目标返回单元,用于将所述目标安装包进行返回,使得所述目标安装包在启动时所述来源信息能够被读取。
6.根据权利要求5所述的装置,其特征在于,所述来源添加单元包括:
文本生成子单元,用于在所述目标安装文件中生成文本文件;
信息存储子单元,用于将所述来源信息存储到所述文本文件中。
7.根据权利要求6所述的装置,其特征在于,所述信息存储子单元具体用于:将所述来源信息进行MD5处理,得到目标来源信息,将所述目标来源信息存储到所述文本文件中。
8.根据权利要求5或6所述的装置,其特征在于,还包括:
密匙签名单元,用于在所述文件打包单元得到目标安装包之后,在所述目标返回单元将所述目标安装包进行返回之前,利用预先设置的密匙库对所述目标安装包进行签名。
CN201611154765.6A 2016-12-14 2016-12-14 一种应用安装包的生成方法及装置 Active CN108228246B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611154765.6A CN108228246B (zh) 2016-12-14 2016-12-14 一种应用安装包的生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611154765.6A CN108228246B (zh) 2016-12-14 2016-12-14 一种应用安装包的生成方法及装置

Publications (2)

Publication Number Publication Date
CN108228246A CN108228246A (zh) 2018-06-29
CN108228246B true CN108228246B (zh) 2021-07-27

Family

ID=62651041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611154765.6A Active CN108228246B (zh) 2016-12-14 2016-12-14 一种应用安装包的生成方法及装置

Country Status (1)

Country Link
CN (1) CN108228246B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124475B (zh) * 2018-10-31 2023-12-08 伊姆西Ip控股有限责任公司 存储管理的方法、电子设备和计算机可读存储介质
CN112698842A (zh) * 2019-10-22 2021-04-23 北京国双科技有限公司 获取应用程序的额外信息的方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346184A (zh) * 2013-08-01 2015-02-11 中兴通讯股份有限公司 应用打包装置及方法
CN104503780A (zh) * 2014-12-09 2015-04-08 北京奇虎科技有限公司 一种提供应用渠道包的方法和装置
CN105718276A (zh) * 2014-12-02 2016-06-29 北京奇虎科技有限公司 提供apk下载的方法和装置以及nginx服务器
CN105893008A (zh) * 2015-11-16 2016-08-24 乐视网信息技术(北京)股份有限公司 一种定制多渠道安装包的方法及装置
CN106126205A (zh) * 2016-06-14 2016-11-16 武汉斗鱼网络科技有限公司 一种安卓程序安装包的快速批量生成方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346184A (zh) * 2013-08-01 2015-02-11 中兴通讯股份有限公司 应用打包装置及方法
CN105718276A (zh) * 2014-12-02 2016-06-29 北京奇虎科技有限公司 提供apk下载的方法和装置以及nginx服务器
CN104503780A (zh) * 2014-12-09 2015-04-08 北京奇虎科技有限公司 一种提供应用渠道包的方法和装置
CN105893008A (zh) * 2015-11-16 2016-08-24 乐视网信息技术(北京)股份有限公司 一种定制多渠道安装包的方法及装置
CN106126205A (zh) * 2016-06-14 2016-11-16 武汉斗鱼网络科技有限公司 一种安卓程序安装包的快速批量生成方法及系统

Also Published As

Publication number Publication date
CN108228246A (zh) 2018-06-29

Similar Documents

Publication Publication Date Title
CN109062582B (zh) 一种应用安装包的加密方法及装置
US9716771B2 (en) Cache control for web application resources
CN108184170B (zh) 一种数据处理方法及装置
CN107479868B (zh) 一种界面加载方法、装置及设备
CN108228246B (zh) 一种应用安装包的生成方法及装置
CN114553858A (zh) 一种资源预下载的方法、装置以及设备
CN112134908B (zh) 应用适配方法及服务器、介质、车载多媒体系统
CN110532016B (zh) 版本管理方法、版本更新方法和版本管理系统
CN109325194B (zh) 页面访问方法、装置、设备以及存储介质
CN113873013B (zh) 一种离线包重组方法及系统
CN113608800A (zh) 项目启动方法、装置、电子设备及存储介质
CN111177600B (zh) 一种基于移动应用的内置网页加载方法及装置
CN111259283A (zh) 一种页面资源预加载的处理方法及装置,电子和存储设备
CN112579955A (zh) 一种页面访问方法、设备、介质及电子设备
CN113077260A (zh) 基于区块链的数据访问方法、装置及电子设备
CN110764930B (zh) 基于消息模式的请求或应答处理方法及装置
CN113792346A (zh) 一种可信数据处理方法、装置及设备
CN105446759A (zh) 一种rpm包更新方法与设备
CN110019497B (zh) 一种数据读取方法及装置
CN110929188A (zh) 服务端页面渲染方法及装置
CN114816816A (zh) 崩溃堆栈信息处理方法、装置、设备及存储介质
CN114462101A (zh) 一种应用apk包的处理系统、方法和装置
CN110399160B (zh) 渠道包打包方法、装置、服务器以及存储介质
CN105812894A (zh) 一种基于智能终端的视频文件处理方法和装置
CN113377376A (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
CB02 Change of applicant information

Address after: 100080 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant