CN103019708A - 用于发布软件的方法和系统 - Google Patents

用于发布软件的方法和系统 Download PDF

Info

Publication number
CN103019708A
CN103019708A CN2012105063559A CN201210506355A CN103019708A CN 103019708 A CN103019708 A CN 103019708A CN 2012105063559 A CN2012105063559 A CN 2012105063559A CN 201210506355 A CN201210506355 A CN 201210506355A CN 103019708 A CN103019708 A CN 103019708A
Authority
CN
China
Prior art keywords
channel
software
bag
taoist monastic
configuration file
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
CN2012105063559A
Other languages
English (en)
Other versions
CN103019708B (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 Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201210506355.9A priority Critical patent/CN103019708B/zh
Publication of CN103019708A publication Critical patent/CN103019708A/zh
Application granted granted Critical
Publication of CN103019708B publication Critical patent/CN103019708B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种用于发布软件的方法和系统,该系统包括软件编译设备、发布服务器、测试服务器以及渠道配置设备,所述渠道配置设备用于使每个渠道号表示一个软件发布渠道;所述软件编译设备用于将渠道包发送到所述发布服务器;所述发布服务器用于将该渠道包作为发布包在相应的软件发布渠道上进行发布;所述测试服务器,所述编译配置文件还存储有将要编译生成的渠道包的文件名称;所述软件编译设备还用于使得编译配置文件中保存的渠道号转移到渠道号配置文件中得到保存,并将渠道包发送给测试服务器;所述测试服务器用于提供下载渠道包以对渠道包进行验证。本发明通过在软件中增加渠道号,能够实现跟踪软件产品并不断更新完善产品的功能。

Description

用于发布软件的方法和系统
技术领域
本发明涉及数据交换网络技术领域,具体涉及一种通过数据交换网络发布特定数据的方法,特别是在互联网上用于发布软件的方法和系统。
背景技术
软件的发布是软件开发者在向使用者提供软件的一个重要环节,当前的用于发布软件的方法通常是集成发布,所谓集成发布是指将软件的编译、测试、正式发布等流程整合在一个软件发布系统中进行,集成发布技术能提高软件发布的规范化、可控性和发布的效率。目前已有一些自动化的集成发布方法和工具,例如使用Cruise control,Hudson等集成发布软件。但是这些软件发布方法和系统均只能支持在一个固定的软件发布渠道上(例如开发者拥有的下载服务器)进行软件发布。
然而,随着互联网尤其是移动互联网的发展,应用程序的种类和数量出现了爆炸性的增长,一款应用程序要想取得用户的喜欢,除了要有好的产品创意及实现,应用程序产品的推广也越来越重要。软件开发者有时需要将同一软件在不同的发布渠道上进行发布,例如通过其商业合作者将同一版本的软件同步发布。
在这种情况下,可能需要对软件的不同发布渠道的发布效果进行区分和评估。然而,现有的集成发布软件并不能对于各个渠道的发布状况进行有效的区分和评估,也不能自动验证发布前后的正确性。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的用于发布软件的方法和系统。
依据本发明的一个方面,提供了一种用于发布软件的方法,包括:根据软件的多个发布渠道设定多个渠道号,使每个渠道号表示一个软件发布渠道;根据所述各渠道号生成相应的编译配置文件;根据每个编译配置文件和该软件的源代码文件编译生成多个渠道包,该渠道包中包含有渠道号;将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布;其中,在设定所述软件的多个发布渠道号之后,将各渠道号存储于一个渠道配置文件中。
可选地,所述根据各渠道号生成相应的编译配置文件的步骤包括:从所述渠道配置文件中读取一个渠道号,将该渠道号存储在一个编译配置文件中。
可选地,所述编译配置文件为XML文件。
可选地,所述编译配置文件中还存储所要编译生成的渠道包的文件名称,并且在所述根据每个编译配置文件和该软件的源代码文件编译生成多个渠道包的步骤之后,且在所述将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布的步骤之前,该方法还包括对所述渠道包进行测试的步骤,所述测试步骤为:从所述每个渠道包中读取渠道号,将所读取的渠道号与该渠道包的文件名称进行比对,验证该渠道包的文件名称中是否包含该所读取的渠道号。
可选地,所述各渠道包中包括用于存储渠道号的渠道号配置文件,该渠道号配置文件中存储的渠道号来源于与该渠道包相对应的编译配置文件。
可选地,所述将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布的步骤进一步包括:将所述渠道包拷贝到发布服务器上,并所述渠道包重新命名,去除原来渠道包文件名称中的渠道号,将重新命名后的渠道包作为发布包。
可选地,所述将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布的步骤进一步包括:在发布软件之前,为每个发布包计算md5值;在将所述各发布包在与之相对应的软件发布渠道进行发布之后,通过所述软件发布渠道下载各所述发布包,并计算所下载得到的各发布包的md5值;比较所述各发布包在发布前后的md5值来检验发布是否成功。
依据本发明的一个方面,提供了一种用于发布软件的系统,包括软件编译设备、发布服务器、测试服务器以及渠道配置设备,所述渠道配置设备用于根据软件的发布渠道设定软件发布的渠道号,使每个渠道号表示一个软件发布渠道,并根据所述渠道号生成编译配置文件,使每个渠道号对应一个编译配置文件,每个编译配置文件中至少包括有与相应的软件发布渠道相对应的渠道号;所述软件编译设备用于根据每个编译配置文件和该软件的源代码文件编译生成渠道包,并将渠道包发送到所述发布服务器;所述发布服务器用于获得软件编译设备发送的渠道包,将该渠道包作为发布包在相应的软件发布渠道上进行发布;所述测试服务器,所述编译配置文件还存储有将要编译生成的渠道包的文件名称,且该渠道包的文件名称中包含有渠道号;所述软件编译设备还用于根据编译配置文件生成渠道号配置文件,使得编译配置文件中保存的渠道号转移到渠道号配置文件中得到保存,并将渠道包发送给测试服务器;所述测试服务器用于提供下载所述的渠道包以对渠道包进行验证:当所述渠道包的渠道号配置文件中保存的渠道号包含于该渠道包的文件名称中时,渠道包验证成功,将该渠道包发送到发布服务器;否则,提示渠道包验证失败。
可选地,所述发布服务器还用于得到所述测试服务器发送的渠道包之后,对该渠道包重新命名,去除原来渠道包文件名称中的渠道号,并将重新命名后的渠道包作为发布包进行发布。
本发明提出的用于发布软件的方法和系统将软件开发完成后进行多渠道发布的过程实现了自动化,提高了多渠道软件发布的效率。
本发明集成了对软件的测试和验证的过程,既避免了由于手工操作引起的错误,同时降低了发布过程中其他各种不确定因素引起的出错风险。
本发明为不同渠道发布的软件安装包指定了渠道号,有利于了解软件在不同渠道的推广,跟踪每个渠道的软件安装包的信息,从而为后续的更新和完善软件产品提供了信息支持。
附图说明
本发明的附图仅用于显示本发明的优选实施方式,而不应被理解为对本发明的技术方案的限制。在各附图中,相同的附图标记表示相同或相类似的部件、模块或元件,其中,
图1是本发明的用于发布软件的方法的基本流程框图;
图2是本发明的用于发布软件的方法一个实施例的生成渠道包的流程示意图;
图3是本发明的用于发布软件的方法一个实施例的生成渠道包之后的流程示意图;
图4是本发明的用于发布软件的系统的一个实施例的架构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。通过下文中对优选实施方式的详细描述,本领域普通技术人员将会更加清楚地了解本发明的优点和益处。
图1是本发明的用于发布软件的方法的基本流程框图。如图1所示,本发明的方法包括如下步骤:步骤S1、根据软件的发布渠道设定软件分发的渠道号,使每个渠道号表示一个软件发布渠道;步骤S2、根据所述渠道号生成编译配置文件,使每个渠道号对应一个编译配置文件;步骤S3、将每个编译配置文件和该软件的源代码文件进行编译生成软件的安装包,即渠道包,使每个渠道包对应一个软件发布渠道;步骤S4、将各个渠道包转换成软件发布包后以其所对应的软件发布渠道进行发布。
本发明中的软件发布“渠道”是指能够为公众提供软件下载服务的网络平台。例如软件开发公司的网站、社交网络平台、网络搜索服务提供者的推广网站等等。为了解决上述现有的软件发布技术的问题,本发明提出用渠道号来区分不同软件发布渠道。渠道号是用于标识不同软件发布渠道的数据,例如是指定长度的字符串。渠道号也可以是格式化的数据。但是,根据本发明,一个软件发布渠道对应一个特定的渠道号,即每个渠道号表示一个特定的软件发布渠道。
在进行软件发布的前期,需要对软件进行编译,根据本发明,对于一个特定的软件发布渠道,在编译软件之前,根据该特定的软件发布渠道的渠道号来生成编译配置文件,所述编译配置文件用于存储在编译软件时的配置信息。根据本发明,所述编译配置文件中除了包括一般编译配置信息之外,还包括渠道号和编译生成的软件的安装包文件名称,该软件的安装包文件名称与该渠道号相对应。本发明中,将与特定软件发布渠道相对应的软件安装包也称为“渠道包”。由此,在编译时,根据编译配置文件中的渠道号和渠道包文件名称,将软件的源代码文件和该编译配置文件一起编译生成渠道包,并将该编译配置文件中存储的渠道包的文件名称作为编译生成的渠道包的文件名称。此处所述的“编译”是广义的编译,包括将源代码文件和配置文件进行处理生成安装文件的所有过程,例如包括对源代码文件编译生成可执行程序、解释性文件等,还包括生成支持软件自动安装的压缩包、安装程序等。最后生成的渠道包是一个压缩包文件,编译配置文件被压缩于该压缩包文件中。
在生成了渠道包之后,就可以将该渠道包在相应的发布渠道中进行后续的发布流程。
根据本发明的一种具体实施方式,在生成了渠道包之后,还包括对渠道包进行测试的步骤,以确保每个渠道包是正确的。在测试时,从渠道包中解压缩编译配置文件,并读取该编译配置文件中存储的渠道号以及渠道包文件名称,将所读取的渠道包文件名称与所测试的渠道名的真实文件名称进行对比,以验证该渠道包是否正确。
下面通过实施例来进一步说明本发明的方法和系统。
图2是根据本发明的一个实施例的用于发布软件的方法中生成渠道包的流程示意图。如图2所示,该实施例的软件的源代码存储于多个源代码文件4中,源代码文件4通过一个源代码库3进行管理。例如,可通过Subversion软件对源代码文件4进行管理。
在该实施例中,假设软件的发布渠道有三个,分别为渠道A、渠道B和渠道C。渠道A、B、C例如分别代表软件开发者的官方网站、某社交网站的软件发布平台、某搜索服务网站的软件推广平台。在软件进行分布之前,首先为这三个渠道设定渠道号,使每个渠道都具有一个特定的渠道号,从而能够对不同的发布渠道相互区别。一种渠道号的设定实例如下表如示:
  渠道名   渠道号   渠道信息
  渠道A   001   软件开发者的官方网站
  渠道B   002   某社交网站的软件发布平台
 渠道C   003   某搜索服务网站的软件推广平台
该实例以简单的数字作为渠道号,但本发明并不限于此。在具体应用时,也可以采用加密字符作为渠道号,以提高软件发布渠道设置的保密性。
如图2所示,在该实施例中,将软件发布渠道的渠道号及相关渠道信息存储于一个渠道配置文件1中。在软件发布之前,首先要对该软件编译生成软件安装包。为了实现多渠道发布,在进行编译时,首先从该渠道配置文件1中读取与多个渠道对应的多个渠道号,并且针对每个渠道号生成一个编译配置文件2。图2中针对渠道A、渠道B和渠道C分别生成编译配置文件2A、编译配置文件2B和编译配置文件2C。每个编译配置文件2中保存一个渠道号,并且指定了与该渠道号相对应的一个特定的渠道包文件名称。如前所述,这里所述的渠道包是指与特定软件发布渠道相对应的软件安装包,渠道包文件名称即该软件安装包的文件名称。本发明的优选实施方式为使该渠道包文件名称中包含有渠道号,以便于后续对于渠道包的测试。例如,编译配置文件2A中保存有渠道号“001”,也保存有渠道包文件名称如“Testsoft001.1.0.1.apk”;编译配置文件2B中保存有渠道号“002”,也保存有渠道包文件名称如“Testsoft002.1.0.1.apk”;编译配置文件2C中保存有渠道号“003”,也保存有渠道包文件名称如“Testsoft003.1.0.1.apk”。该实施例中的编译配置文件2采用标准XML文件格式,但其他的文件格式也可采用,本发明对于编译配置文件2的文件格式不作限定。
针对每个渠道生成特定的编译配置文件2之后,执行对软件的编译过程,以生成针对不同软件发布渠道的软件安装包,或称为渠道包,如图2中所示的渠道包5包括渠道包5A、渠道包5B和渠道包5C。对于java软件,例如调用ant编译工具先把java源代码文件编译成class文件,然后再把class文件打成jar包,然后在用压缩优化zipalign工具生成一个apk安装包,即渠道包5,每个渠道包5的文件名称与编译配置文件2中存储的相对应,例如“Testsoft001.1.0.1.apk”、“Testsoft002.1.0.1.apk”、“Testsoft002.1.0.1.apk”,在编译过程中,还包括根据编译配置文件2生成渠道号配置文件6的步骤,并使得编译配置文件2中保存的渠道号转移到该渠道号配置文件6中得到保存。该实施例最后生成的每个apk渠道包5中包含一个特定的渠道号配置文件6,因而对应一个特定的渠道。在具体应用中,还可包括给apk渠道包签名的步骤等,其均为本领域技术人员能够在本发明的基础上所作的变化,在此不再做更详细的说明。
图3是本发明的上述实施例的用于发布软件的方法中生成渠道包之后的流程示意图。如图3所示,在该实施例中,在生成渠道包5之后,为了保证渠道包编译完成的正确性,将所生成的各个渠道包5拷贝一个测试服务器10上进行测试。在测试时,可模拟从测试服务器中下载所述的apk渠道包5,然后例如用解压缩工具unzip解压缩每个下载的apk渠道包5,得到其中的渠道号配置文件6,并从该渠道号配置文件6中读取渠道号,以对所下载的渠道包的正确性进行验证。在验证时,可以将从解压缩的渠道号配置文件6中读取的渠道号和该渠道包5的文件名称进行比对。如前所述,由于该实施例中的编译配置文件2设定了渠道包文件名称中包含有渠道号,因此,如果比对结果显示该渠道包的文件名称中没有包含渠道号,或者包含的渠道号与从渠道号配置文件6中读取的不一致,则验证失败,此时需返回编译步骤重新编译和测试。相反,如果比对结果显示该渠道包的文件名称中包含的渠道号与从渠道号配置文件6中读取的一致,则验该渠道包正确,可进行下一步发布流程。
如图3所示,在渠道包测试正确之后,将该渠道包5拷贝到发布服务器11上,同时,对该渠道包5重新命名,去除原来渠道包文件名称中的渠道号,并将重新命名后的渠道包作为发布包7,该发布包7即进行正式的软件发布的文件包,即图中显示的发布包7A、发布包7B和发布包7C,分别对应于渠道号001、002、003。在该实施例中,渠道包5为apk渠道包,将各apk渠道包拷贝到发布服务器上并重新命名,例如:渠道包“Testsoft001.1.0.1.apk”重新命名为发布包“SoftA.1.0.1.apk”;渠道包“Testsoft002.1.0.1.apk”重新命名为发布包“SoftB.1.0.1.apk”;渠道包“Testsoft003.1.0.1.apk”重新命名为发布包“SoftC.1.0.1.apk”。所述的重命名的规则可由分类配置文件进行指定。也就是说,可在分类配置文件中保存各渠道号以及相应于各渠道号的用于正式发布的发布包的文件名称。应当注意的是,该发布包7的文件名称中不包含渠道号。此时,也可以选择性地把每个发布包7在模拟器中进行简单的测试,如安装,卸载,打开运行,关闭运行等,以验证发布包的正确性。
最后,所述发布服务器11将各个发布包7通过与发布包7对应的渠道号表示的软件发布渠道进行发布。如图3所示,发布服务器将各个发布包发布到不同的网络下载服务器12,包括将发布包7A发布到网络下载服务器12A,将发布包7B发布到网络下载服务器12B,将发布包7C发布到网络下载服务器12C,以实现多渠道的软件发布。所述发布包7中包含的渠道号用于发布后跟踪每一个发布包的下载安装及使用情况,便于统计用户使用情况以及反馈,有利于及时更新完善软件产品的功能,给用户带来极致的使用体验。
在完成软件的发布之后,还可以对各个渠道发布的软件进行检验。在该实施例中,采用计算软件的md5值的方法来进行检验。为了实现该检验,发布服务器在进行正式发布之前,为每个发布包计算一个md5值,在发布完成之后,通过各渠道下载各发布包7,例如通过渠道A从网络下载服务器12A下载发布包7A,并计算所下载的各发布包的md5值,比较发布前后的md5是否一致可以判断发布过程是否成功。在该实施例中,在发布服务器发布软件之前,为每个发布包“SoftA.1.0.1.apk”、“SoftB.1.0.1.apk”、“SoftC.1.0.1.apk”计算md5值,在完成发布后,可以通过渠道A(即软件开发者的官方网站)下载得到发布包“SoftA.1.0.1.apk”,计算该发布包的md5值,与发布前计算的“SoftA.1.0.1.apk”的md5值进行比较,以检验“SoftA.1.0.1.apk”是否发布成功。
以上描述了本发明的用于发布软件的方法的一个具体实施例,下面描述实现本发明的用于发布软件的方法的一个系统的具体实施例。该实施例的用于发布软件的系统在图4中显示。下面参照图4进行说明。
图4是本发明的用于发布软件的系统的一个实施例的架构示意图,该系统包括软件编译设备9、发布服务器11和渠道配置设备8。如图4所示,渠道配置设备8、软件编译设备9和发布服务器11依次相连,渠道配置设备8用于根据软件的多个发布渠道设定渠道号,使每个渠道号表示一个软件发布渠道,并根据所述多个渠道号生成多个编译配置文件2,每个编译配置文件2中至少包括有与相应的软件发布渠道相对应的渠道号。
软件编译设备9根据每个编译配置文件2和该软件的源代码文件4编译生成渠道包5。编译完成后,软件编译设备9将渠道包5发送到发布服务器11上进行发布。具体的编译过程在上述对于用于发布软件的方法的实施例中已作详细说明,故在此不再赘述。
发布服务器11用于获得软件编译设备发送的渠道包5,将该渠道包5作为发布包7在相应的软件发布渠道上进行发布,例如将发布包7A提供给软件开发者的官方网站的网络下载服务器12A上。由于该发布包7A中包含有渠道号配置文件6,渠道号配置文件6中保存有渠道号,因此该软件发布后可跟踪发布包7A的下载安装及使用情况,便于统计用户使用情况以及反馈,有利于及时更新完善软件产品的功能。
如图4所示,该实施例的用于发布软件的系统还可以包括一个测试服务器10,在这种情况下,所述的编译配置文件2中除了保存有渠道号之外,还存储有将要编译生成的渠道包的文件名称。并且,该渠道包5的文件名称中包含有渠道号。
在编译过程中,该软件编译设备9还根据编译配置文件2生成渠道号配置文件6,使得编译配置文件2中保存的渠道号转移到渠道号配置文件6中得到保存。在软件编译完成后,软件编译设备9不直接将渠道包发送给发布服务器11,而是先发送给测试服务器10。测试服务器10用于测试所编译生成的渠道包5的正确性,在测试时,测试服务器10提供下载所述的渠道包5,然后解压缩每个下载的渠道包5A、5B、5C,得到其中的渠道号配置文件6,将从解压缩的渠道号配置文件6中读取的渠道号和该渠道包的文件名称进行比对。如前所述,由于编译配置文件2设定了渠道包文件名称中包含有渠道号,因此,如果比对结果显示该渠道包的文件名称中没有包含渠道号,或者包含的渠道号与从渠道号配置文件6中读取的不一致,则测试服务器提示验证失败。相反,如果比对结果显示该渠道包的文件名称中包含的渠道号与从渠道号配置文件6中读取的一致,则验证该渠道包正确,此时,测试服务器10将渠道包发送到发布服务器11。
在这种情况下,由于渠道包的文件名称中包含有渠道号,因此发布服务器在得到所述测试服务器10发送的渠道包之后,在进行发布之前对该渠道包5重新命名,去除原来渠道包文件名称中的渠道号,并将重新命名后的渠道包作为发布包7,该发布包7即进行正式的软件发布的文件包。如前所述,重新命名的规则可以存储于分类配置文件中,在此不再详细说明。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种用于发布软件的方法,包括:
根据软件的多个发布渠道设定多个渠道号,使每个渠道号表示一个软件发布渠道;
根据所述各渠道号生成相应的编译配置文件;
根据每个编译配置文件和该软件的源代码文件编译生成多个渠道包,该渠道包中包含有渠道号,所述渠道包是指与特定软件发布渠道相对应的软件安装包;
将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布;
其中,在设定所述软件的多个发布渠道号之后,将各渠道号存储于一个渠道配置文件中。
2.如权利要求1所述的用于发布软件的方法,其特征在于,所述根据各渠道号生成相应的编译配置文件的步骤包括:从所述渠道配置文件中读取一个渠道号,将该渠道号存储在一个编译配置文件中。
3.如权利要求1至2的任一项所述的用于发布软件的方法,其特征在于,所述编译配置文件为XML文件。
4.如权利要求1至3的任一项所述的用于发布软件的方法,其特征在于,所述编译配置文件中还存储所要编译生成的渠道包的文件名称,并且在所述根据每个编译配置文件和该软件的源代码文件编译生成多个渠道包的步骤之后,且在所述将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布的步骤之前,该方法还包括对所述渠道包进行测试的步骤,所述测试步骤为:
从所述每个渠道包中读取渠道号,将所读取的渠道号与该渠道包的文件名称进行比对,验证该渠道包的文件名称中是否包含该所读取的渠道号。
5.如权利要求1-4的任一项所述的用于发布软件的方法,其特征在于,所述各渠道包中包括用于存储渠道号的渠道号配置文件,该渠道号配置文件中存储的渠道号来源于与该渠道包相对应的编译配置文件。
6.如权利要求1至5的任一项所述的用于发布软件的方法,其特征在于,所述将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布的步骤进一步包括:
将所述渠道包拷贝到发布服务器上,并所述渠道包重新命名,去除原来渠道包文件名称中的渠道号,将重新命名后的渠道包作为发布包。
7.如权利要求1-6的任一项所述的用于发布软件的方法,其特征在于,所述将各个渠道包作为发布包在与之相对应的软件发布渠道进行发布的步骤进一步包括:
在发布软件之前,为每个发布包计算md5值;
在将所述各发布包在与之相对应的软件发布渠道进行发布之后,通过所述软件发布渠道下载各所述发布包,并计算所下载得到的各发布包的md5值;
比较所述各发布包在发布前后的md5值来检验发布是否成功。
8.一种用于发布软件的系统,包括软件编译设备、发布服务器、测试服务器以及渠道配置设备,
所述渠道配置设备用于根据软件的发布渠道设定软件发布的渠道号,使每个渠道号表示一个软件发布渠道,并根据所述渠道号生成编译配置文件,使每个渠道号对应一个编译配置文件,每个编译配置文件中至少包括有与相应的软件发布渠道相对应的渠道号;
所述软件编译设备用于根据每个编译配置文件和该软件的源代码文件编译生成渠道包,并将渠道包发送到所述发布服务器;
所述发布服务器用于获得软件编译设备发送的渠道包,将该渠道包作为发布包在相应的软件发布渠道上进行发布;
所述测试服务器,所述编译配置文件还存储有将要编译生成的渠道包的文件名称,且该渠道包的文件名称中包含有渠道号;
所述软件编译设备还用于根据编译配置文件生成渠道号配置文件,使得编译配置文件中保存的渠道号转移到渠道号配置文件中得到保存,并将渠道包发送给测试服务器;
所述测试服务器用于提供下载所述的渠道包以对渠道包进行验证:当所述渠道包的渠道号配置文件中保存的渠道号包含于该渠道包的文件名称中时,渠道包验证成功,将该渠道包发送到发布服务器;否则,提示渠道包验证失败。
9.如权利要求8所述的用于发布软件的系统,其特征在于,所述发布服务器还用于得到所述测试服务器发送的渠道包之后,对该渠道包重新命名,去除原来渠道包文件名称中的渠道号,并将重新命名后的渠道包作为发布包进行发布。
CN201210506355.9A 2012-11-30 2012-11-30 用于发布软件的系统 Expired - Fee Related CN103019708B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210506355.9A CN103019708B (zh) 2012-11-30 2012-11-30 用于发布软件的系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210506355.9A CN103019708B (zh) 2012-11-30 2012-11-30 用于发布软件的系统

Publications (2)

Publication Number Publication Date
CN103019708A true CN103019708A (zh) 2013-04-03
CN103019708B CN103019708B (zh) 2015-12-09

Family

ID=47968347

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210506355.9A Expired - Fee Related CN103019708B (zh) 2012-11-30 2012-11-30 用于发布软件的系统

Country Status (1)

Country Link
CN (1) CN103019708B (zh)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103064666A (zh) * 2012-11-30 2013-04-24 北京奇虎科技有限公司 一种多渠道软件发布方法和系统
CN103729186A (zh) * 2013-12-31 2014-04-16 上海网达软件股份有限公司 一种批量生成多渠道apk文件包的方法
CN104021001A (zh) * 2014-06-18 2014-09-03 董崇军 一种软件发布方法和系统
CN104036384A (zh) * 2014-05-16 2014-09-10 上海倍通医药科技咨询有限公司 一种电子文件名称规范化管理及存储登记的方法
WO2014187255A1 (zh) * 2013-08-01 2014-11-27 中兴通讯股份有限公司 应用打包装置及方法
CN104217140A (zh) * 2014-08-29 2014-12-17 北京奇虎科技有限公司 一种应用程序的加固方法和装置
CN104267988A (zh) * 2014-09-26 2015-01-07 北京飞流九天科技有限公司 用于对移动应用进行打包的系统和方法
CN104320432A (zh) * 2014-09-28 2015-01-28 百度在线网络技术(北京)有限公司 一种软件安装方法、装置、服务器及系统
CN104346167A (zh) * 2014-08-25 2015-02-11 腾讯科技(深圳)有限公司 生成应用渠道包的方法及装置
CN104363264A (zh) * 2014-10-22 2015-02-18 北京棱镜云桥科技有限公司 移动终端软件的多渠道sdk接入系统及方法
CN104503745A (zh) * 2014-12-09 2015-04-08 北京奇虎科技有限公司 一种生成应用渠道包的方法和装置
CN104516755A (zh) * 2013-10-08 2015-04-15 博雅网络游戏开发(深圳)有限公司 安装包生成方法和装置
CN104615448A (zh) * 2013-11-05 2015-05-13 北大方正集团有限公司 一种软件渠道包更新方法、管理方法及设备
CN104615414A (zh) * 2013-11-04 2015-05-13 腾讯科技(深圳)有限公司 一种渠道包定制方法及装置
CN104615719A (zh) * 2015-02-05 2015-05-13 百度在线网络技术(北京)有限公司 应用程序智能分发方法和装置
CN105068818A (zh) * 2015-08-26 2015-11-18 网易(杭州)网络有限公司 生成渠道包的方法、装置与批量生成渠道包的方法、系统
CN105407088A (zh) * 2015-10-28 2016-03-16 成都快发助手科技有限公司 游戏上架方法和装置
WO2016061762A1 (zh) * 2014-10-22 2016-04-28 刘大澎 移动终端软件的多渠道sdk接入系统及方法
WO2016091034A1 (zh) * 2014-12-09 2016-06-16 北京奇虎科技有限公司 一种提供应用渠道包的方法和装置
CN106445806A (zh) * 2016-08-26 2017-02-22 北京小米移动软件有限公司 软件测试方法及装置
CN106502715A (zh) * 2016-09-19 2017-03-15 乐视控股(北京)有限公司 一种应用程序多渠道配置方法及装置
CN106528069A (zh) * 2015-09-15 2017-03-22 阿里巴巴集团控股有限公司 Sdk集成方法和装置
WO2017084266A1 (zh) * 2015-11-16 2017-05-26 乐视控股(北京)有限公司 一种定制多渠道安装包的方法及装置
CN106775912A (zh) * 2016-12-15 2017-05-31 广州视源电子科技股份有限公司 软件发布方法及系统
CN106909357A (zh) * 2015-12-22 2017-06-30 中国移动通信集团公司 一种应用程序渠道信息获取方法和装置
CN106990948A (zh) * 2016-10-14 2017-07-28 深圳大宇无限科技有限公司 应用升级处理方法和装置
CN107247661A (zh) * 2017-05-09 2017-10-13 北京京东尚科信息技术有限公司 支持对应用的安装包进行自动化验证的方法和系统
CN108259410A (zh) * 2016-12-28 2018-07-06 航天信息股份有限公司 一种基于云服务的在线安装应用的方法及系统
CN110377333A (zh) * 2019-07-24 2019-10-25 上海游民网络科技有限公司 一种应用安装包文件处理方法及系统
CN112988177A (zh) * 2021-04-16 2021-06-18 腾讯科技(深圳)有限公司 应用安装包的发布、应用程序的运行方法、服务器及终端

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102056188A (zh) * 2009-10-30 2011-05-11 华为终端有限公司 数据生成、传输方法及相关设备
CN102591667A (zh) * 2012-01-16 2012-07-18 深圳市同洲视讯传媒有限公司 一种远程发布应用的方法及装置
CN103064666A (zh) * 2012-11-30 2013-04-24 北京奇虎科技有限公司 一种多渠道软件发布方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102056188A (zh) * 2009-10-30 2011-05-11 华为终端有限公司 数据生成、传输方法及相关设备
CN102591667A (zh) * 2012-01-16 2012-07-18 深圳市同洲视讯传媒有限公司 一种远程发布应用的方法及装置
CN103064666A (zh) * 2012-11-30 2013-04-24 北京奇虎科技有限公司 一种多渠道软件发布方法和系统

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103064666A (zh) * 2012-11-30 2013-04-24 北京奇虎科技有限公司 一种多渠道软件发布方法和系统
CN103064666B (zh) * 2012-11-30 2016-08-24 北京奇虎科技有限公司 一种多渠道软件发布方法和系统
WO2014187255A1 (zh) * 2013-08-01 2014-11-27 中兴通讯股份有限公司 应用打包装置及方法
CN104516755A (zh) * 2013-10-08 2015-04-15 博雅网络游戏开发(深圳)有限公司 安装包生成方法和装置
CN104615414A (zh) * 2013-11-04 2015-05-13 腾讯科技(深圳)有限公司 一种渠道包定制方法及装置
CN104615414B (zh) * 2013-11-04 2019-02-01 腾讯科技(深圳)有限公司 一种渠道包定制方法及装置
CN104615448B (zh) * 2013-11-05 2018-10-30 北大方正集团有限公司 一种软件渠道包更新方法、管理方法及设备
CN104615448A (zh) * 2013-11-05 2015-05-13 北大方正集团有限公司 一种软件渠道包更新方法、管理方法及设备
CN103729186A (zh) * 2013-12-31 2014-04-16 上海网达软件股份有限公司 一种批量生成多渠道apk文件包的方法
CN104036384A (zh) * 2014-05-16 2014-09-10 上海倍通医药科技咨询有限公司 一种电子文件名称规范化管理及存储登记的方法
CN104021001A (zh) * 2014-06-18 2014-09-03 董崇军 一种软件发布方法和系统
CN104346167A (zh) * 2014-08-25 2015-02-11 腾讯科技(深圳)有限公司 生成应用渠道包的方法及装置
CN104346167B (zh) * 2014-08-25 2018-05-08 腾讯科技(深圳)有限公司 生成应用渠道包的方法及装置
CN104217140A (zh) * 2014-08-29 2014-12-17 北京奇虎科技有限公司 一种应用程序的加固方法和装置
CN104217140B (zh) * 2014-08-29 2017-03-15 北京奇虎科技有限公司 一种应用程序的加固方法和装置
CN104267988A (zh) * 2014-09-26 2015-01-07 北京飞流九天科技有限公司 用于对移动应用进行打包的系统和方法
CN104320432A (zh) * 2014-09-28 2015-01-28 百度在线网络技术(北京)有限公司 一种软件安装方法、装置、服务器及系统
CN104363264A (zh) * 2014-10-22 2015-02-18 北京棱镜云桥科技有限公司 移动终端软件的多渠道sdk接入系统及方法
WO2016061762A1 (zh) * 2014-10-22 2016-04-28 刘大澎 移动终端软件的多渠道sdk接入系统及方法
CN104363264B (zh) * 2014-10-22 2017-10-03 北京棱镜云桥科技有限公司 移动终端软件的多渠道sdk接入系统
CN104503745A (zh) * 2014-12-09 2015-04-08 北京奇虎科技有限公司 一种生成应用渠道包的方法和装置
CN104503745B (zh) * 2014-12-09 2018-06-26 北京奇虎科技有限公司 一种生成应用渠道包的方法和装置
WO2016091034A1 (zh) * 2014-12-09 2016-06-16 北京奇虎科技有限公司 一种提供应用渠道包的方法和装置
CN104615719B (zh) * 2015-02-05 2018-04-17 百度在线网络技术(北京)有限公司 应用程序智能分发方法和装置
CN104615719A (zh) * 2015-02-05 2015-05-13 百度在线网络技术(北京)有限公司 应用程序智能分发方法和装置
CN105068818A (zh) * 2015-08-26 2015-11-18 网易(杭州)网络有限公司 生成渠道包的方法、装置与批量生成渠道包的方法、系统
CN105068818B (zh) * 2015-08-26 2019-02-12 网易(杭州)网络有限公司 生成渠道包的方法、装置与批量生成渠道包的方法、系统
CN106528069A (zh) * 2015-09-15 2017-03-22 阿里巴巴集团控股有限公司 Sdk集成方法和装置
CN106528069B (zh) * 2015-09-15 2019-06-07 阿里巴巴集团控股有限公司 Sdk集成方法和装置
CN105407088A (zh) * 2015-10-28 2016-03-16 成都快发助手科技有限公司 游戏上架方法和装置
WO2017084266A1 (zh) * 2015-11-16 2017-05-26 乐视控股(北京)有限公司 一种定制多渠道安装包的方法及装置
CN106909357A (zh) * 2015-12-22 2017-06-30 中国移动通信集团公司 一种应用程序渠道信息获取方法和装置
CN106445806A (zh) * 2016-08-26 2017-02-22 北京小米移动软件有限公司 软件测试方法及装置
CN106445806B (zh) * 2016-08-26 2019-09-17 北京小米移动软件有限公司 软件测试方法及装置
CN106502715A (zh) * 2016-09-19 2017-03-15 乐视控股(北京)有限公司 一种应用程序多渠道配置方法及装置
CN106990948A (zh) * 2016-10-14 2017-07-28 深圳大宇无限科技有限公司 应用升级处理方法和装置
CN106775912A (zh) * 2016-12-15 2017-05-31 广州视源电子科技股份有限公司 软件发布方法及系统
CN108259410A (zh) * 2016-12-28 2018-07-06 航天信息股份有限公司 一种基于云服务的在线安装应用的方法及系统
CN107247661A (zh) * 2017-05-09 2017-10-13 北京京东尚科信息技术有限公司 支持对应用的安装包进行自动化验证的方法和系统
CN107247661B (zh) * 2017-05-09 2020-07-31 北京京东尚科信息技术有限公司 支持对应用的安装包进行自动化验证的方法和系统
CN110377333A (zh) * 2019-07-24 2019-10-25 上海游民网络科技有限公司 一种应用安装包文件处理方法及系统
CN112988177A (zh) * 2021-04-16 2021-06-18 腾讯科技(深圳)有限公司 应用安装包的发布、应用程序的运行方法、服务器及终端
CN112988177B (zh) * 2021-04-16 2023-08-01 腾讯科技(深圳)有限公司 应用安装包的发布、应用程序的运行方法、服务器及终端

Also Published As

Publication number Publication date
CN103019708B (zh) 2015-12-09

Similar Documents

Publication Publication Date Title
CN103019708A (zh) 用于发布软件的方法和系统
CN103064666A (zh) 一种多渠道软件发布方法和系统
CN102622241B (zh) 一种软件升级方法及装置
CN103701856B (zh) 一种定义及终端设备获取升级包的方法
CN105893008A (zh) 一种定制多渠道安装包的方法及装置
CN104820602A (zh) 软件包发布方法、装置及系统
CN104346184A (zh) 应用打包装置及方法
CN103701930A (zh) 一种移动应用程序的实时更新方法及系统
CN110377321A (zh) 应用程序升级的方法、装置、终端及存储介质
CN107589947A (zh) 一种sdk接入方法、客户端及系统
EP1755034A1 (en) Object code generation for increasing the performance of delta files
CN109739523B (zh) 应用程序打包方法、装置、存储介质及终端
CN104346167A (zh) 生成应用渠道包的方法及装置
CN102053853A (zh) 一种网络游戏版本更新方法
CN107678750A (zh) 一种sdk打包方法、计算设备及sdk打包系统
CN102455912A (zh) 运行时扩展
CN107864052A (zh) 基于持续部署应用配置自动化升级的方法及其系统
CN106815049B (zh) 特征库升级的方法及装置
CN102541596A (zh) 一种操作系统升级方法及装置
CN105786538A (zh) 基于安卓系统的软件升级方法和装置
CN106547576A (zh) 配置文件的获取方法及装置
CN106886445A (zh) Java数据包生成方法及设备和信息提取方法及设备
CN103838584A (zh) 一种移动终端应用的开发方法及装置
CN104516755A (zh) 安装包生成方法和装置
CN105516079A (zh) 用于数据包的高效下载的方法、客户端设备和服务器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151209

Termination date: 20211130

CF01 Termination of patent right due to non-payment of annual fee