CN106933609B - Android应用程序安装包的生成方法及装置 - Google Patents

Android应用程序安装包的生成方法及装置 Download PDF

Info

Publication number
CN106933609B
CN106933609B CN201511019024.2A CN201511019024A CN106933609B CN 106933609 B CN106933609 B CN 106933609B CN 201511019024 A CN201511019024 A CN 201511019024A CN 106933609 B CN106933609 B CN 106933609B
Authority
CN
China
Prior art keywords
android application
application program
installation package
module
code
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
CN201511019024.2A
Other languages
English (en)
Other versions
CN106933609A (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 58 Information Technology Co Ltd
Original Assignee
Beijing 58 Information 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 58 Information Technology Co Ltd filed Critical Beijing 58 Information Technology Co Ltd
Priority to CN201511019024.2A priority Critical patent/CN106933609B/zh
Publication of CN106933609A publication Critical patent/CN106933609A/zh
Application granted granted Critical
Publication of CN106933609B publication Critical patent/CN106933609B/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/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提出了一种Android应用程序安装包的生成方法及装置,该方法包括:步骤1,通过可视化入口接收对于Android应用程序安装包的配置数据;步骤2,基于所述配置数据替换掉Android应用程序代码中的相应参数;步骤3,通过执行打包命令进行打包,以生成Android应用程序安装包。本发明提供可视化入口来接收对于Android应用程序安装包的配置数据,极大的方便了测试人员等非研发人员在打包过程中的操作。本发明进一步的可以使用脚本来配置参数以实现打包,无需经过开发人员修改代码,在提高打包效率的同时也稳定了代码分支,不会对代码造成影响。

Description

Android应用程序安装包的生成方法及装置
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种Android应用程序安装包的生成方法及装置。
背景技术
在Android系统的应用程序APK(Android Package,Android安装包)开发过程以及发布过程中,都会需要生成安装包即打包,并且十分频繁。而且根据实际开发和测试的要求,每次需要的配置参数都有不同,需要生成相对应的安装包来满足开发和测试人员的需求,这是一个十分繁琐的工作,严重影响了开发的效率并且极容易出错。
现有技术中,研发人员需要根据测试及发布需求,预先确定好应用程序中的服务器地址,替换相对应环境的测试资源或者发布资源,每次打包时都要重新修改相应的配置参数,然后由IDE(Integrated Development Environment,集成开发环境)中自带的打包插件完成打包,然后进行相关的测试或者产品发布,上述过程中所有打包相关的配置都要由开发人员在代码中进行修改,测试人员无法自行操作,无论是开发和测试都来了很大的不便。
发明内容
本发明要解决的技术问题是,提供一种Android应用程序安装包的生成方法及装置,提高打包效率的同时也稳定了代码分支。
本发明采用的技术方案是,所述Android应用程序安装包的生成方法,包括:
步骤1,通过可视化入口接收对于Android应用程序安装包的配置数据;
步骤2,基于所述配置数据替换掉Android应用程序代码中的相应参数;
步骤3,通过执行打包命令进行打包,以生成Android应用程序安装包。
进一步的,对于Android应用程序安装包的配置数据,包括:配置参数和接口环境资源;
所述配置参数,包括:接口环境资源选项、自动化测试开关、缓存开关、渠道号和Android应用程序安装包名称;所述接口环境资源选项,包括:测试环境、开发环境、发布环境、预上线环境。
进一步的,由Android应用程序代码中gradle脚本模块执行步骤1~3;或者,
ant脚本模块执行所述步骤1~2之后,调用Android应用程序代码中gradle脚本模块执行步骤3。
进一步的,所述方法,还包括:在gradle脚本模块执行操作之前,用规范的gradle脚本模块替换掉Android应用程序代码中的gradle脚本模块。
进一步的,所述步骤3,还包括:
对生成的Android应用程序安装包进行签名及代码优化。
本发明还提供一种Android应用程序安装包的生成装置,包括:
数据接收模块,用于通过可视化入口接收对于Android应用程序安装包的配置数据;
参数替换模块,用于所述配置数据替换掉Android应用程序代码中的相应参数;
程序打包模块,用于通过执行打包命令进行打包,以生成Android应用程序安装包。
进一步的,对于Android应用程序安装包的配置数据,包括:配置参数和接口环境资源;
所述配置参数,包括:接口环境资源选项、自动化测试开关、缓存开关、渠道号和Android应用程序安装包名称;所述接口环境资源选项,包括:测试环境、开发环境、发布环境、预上线环境。
进一步的,所述装置中的各模块均设置于Android应用程序代码中gradle脚本模块中进行执行;或者,
所述数据接收模块和所述参数替换模块设置于ant脚本模块进行执行,所述程序打包模块设置于Android应用程序代码中gradle脚本模块中进行执行。
进一步的,所述装置,还包括:
gradle脚本替换模块,用于在gradle脚本模块执行操作之前,用规范的gradle脚本模块替换掉Android应用程序代码中的gradle脚本模块。
进一步的,所述程序打包模块,还用于:
对生成的Android应用程序安装包进行签名及代码优化。
采用上述技术方案,本发明至少具有下列优点:
本发明所述Android应用程序安装包的生成方法及装置,提供可视化入口来接收对于Android应用程序安装包的配置数据,极大的方便了测试人员等非研发人员在打包过程中的操作。本发明进一步的可以使用脚本来配置参数以实现打包,无需经过开发人员修改代码,在提高打包效率的同时也稳定了代码分支,不会对代码造成影响。
附图说明
图1为本发明第一实施例的Android应用程序安装包的生成方法流程图;
图2为本发明第四实施例的Android应用程序安装包的生成装置组成结构示意图。
具体实施方式
为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
本发明第一实施例,一种Android应用程序安装包的生成方法,如图1所示,包括以下具体步骤:
步骤S101,通过可视化入口接收对于Android应用程序安装包的配置数据;
具体的,在步骤S101中,对于Android应用程序安装包的配置数据,包括:配置参数和接口环境资源;
所述配置参数,包括:接口环境资源选项、自动化测试开关、缓存开关、渠道号和Android应用程序安装包名称;所述接口环境资源选项,包括:测试环境、开发环境、发布环境、预上线环境。
步骤S102,基于所述配置数据替换掉Android应用程序代码中的相应参数;
步骤S103,通过执行打包命令进行打包,以生成Android应用程序安装包。
本发明实施例的上述三个步骤可以有两种实际使用方式:
第一种:由Android应用程序代码中gradle脚本模块执行步骤S101~S103;
第二种:由ant脚本模块执行步骤S101~S102之后,调用Android应用程序代码中gradle脚本模块执行步骤S103。
上述第一种方式可以看成是对现有的开发环境中的打包脚本gradle的功能做出改进,在打包操作前增加便于修改配置数据的可视化入口;上述第二种方式可以看成是采用开发环境中的另一种执行文件脚本ant去调用gradle脚本,其重点就在于ant脚本中引入便于修改配置数据的可视化入口。因此,无需经过开发人员修改代码,在提高打包效率的同时也稳定了代码分支,不会对代码造成影响。
本发明第二实施例,一种Android应用程序安装包的生成方法,本实施例所述方法与第一实施例大致相同,区别在于,本实施例的所述方法,还包括:
在gradle脚本模块执行操作之前,用规范的gradle脚本模块替换掉Android应用程序代码中的gradle脚本模块。
本发明实施例中的该规范的gradle脚本模块的代码可以从svn(subversion的简称)服务器上下载,之所以要用下载到的规范的gradle脚本模块去替换掉Android应用程序代码中的gradle脚本模块中的gradle脚本模块,目的是为了提高代码的稳定性,避免了在研发过程中由于多次修改代码而产生的代码错误提交导致的问题。
本发明第三实施例,一种Android应用程序安装包的生成方法,本实施例所述方法与第一实施例大致相同,区别在于,本实施例的所述方法的步骤S103,还包括:对生成的Android应用程序安装包进行签名及代码优化。
具体的,该签名操作的目的是对所述安装包进行加密,签名及代码优化操作可以保证传输过程的安全性。
本发明第四实施例,与第一实施例对应,本实施例介绍一种Android应用程序安装包的生成装置,如图2所示,包括以下组成部分:
1)数据接收模块201,用于通过可视化入口接收对于Android应用程序安装包的配置数据;
具体的,对于Android应用程序安装包的配置数据,包括:配置参数和接口环境资源;
所述配置参数,包括:接口环境资源选项、自动化测试开关、缓存开关、渠道号和Android应用程序安装包名称;所述接口环境资源选项,包括:测试环境、开发环境、发布环境、预上线环境。
2)参数替换模块202,用于所述配置数据替换掉Android应用程序代码中的相应参数;
3)程序打包模块203,用于通过执行打包命令进行打包,以生成Android应用程序安装包。
本发明实施例的所述装置中的上述三个步骤可以有两种设置方式:
第一种:所述装置中的各模块均设置于Android应用程序代码中gradle脚本模块中进行执行;
第二种:所述数据接收模块和所述参数替换模块设置于ant脚本模块进行执行,所述程序打包模块设置于Android应用程序代码中gradle脚本模块中进行执行。
本发明第五实施例,一种Android应用程序安装包的生成装置,本实施例所述装置与第四实施例大致相同,区别在于,本实施例的所述装置,还包括:
gradle脚本替换模块,用于在gradle脚本模块执行操作之前,用规范的gradle脚本模块替换掉Android应用程序代码中的gradle脚本模块。
本发明第六实施例,一种Android应用程序安装包的生成装置,本实施例所述装置与第四实施例大致相同,区别在于,本实施例的所述装置的程序打包模块203,还用于:对生成的Android应用程序安装包进行签名及代码优化。
具体的,该签名操作的目的是对所述安装包进行加密,签名及代码优化操作可以保证传输过程的安全性。
本发明第七实施例,本实施例是在上述实施例的基础上,介绍一个本发明的应用实例。
本实施例的Android应用程序安装包打包过程是采用ant脚本与gradle打包结合的方式,ant脚本中实现Android应用程序安装包代码以及gradle脚本代码的下载更新,以及接口环境资源的替换,配置参数的动态配置。gradle脚本负责实现最终的打包操作。
本实施例的Android应用程序安装包打包过程,如下:
步骤1,首先创建ant脚本的执行文件build.xml以及属性文件build.properties。
具体的,build.properties是一个属性文件,里面放的是打包需要的配置参数:如接口环境资源选项、自动化测试开关、缓存开关、渠道号以及apk包名。apk为Android应用程序安装包的简称。
build.xml中是整个打包流程的脚本。
将gradle脚本放到svn服务器,在打包过程会以svn上的gradle脚本为准进行替换,这样就避免了代码误提交导致的问题。
步骤2,从svn服务器上下载gradle脚本,从git服务器上复制apk代码。
步骤3,用svn服务器上下载的gradle脚本替换掉apk代码中的gradle脚本。
步骤4,用build.properties中的配置参数替换apk代码中相应的参数。
步骤5,从ftp服务器中拉取接口环境资源替换代码中的接口环境资源。
步骤6,执行gradle脚本打包命令,生成apk,对生成的apk进行签名以及代码优化。
采用本发明实施例的Android应用程序安装包打包方法,能够在开发与测试过程中进行打包时,不在需要改动代码来实现,节省了打包时间,提高了打包效率。打包人员可以独立操作,并且根据自己开发或测试需求,自动配置参数实现打包。
通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。

Claims (8)

1.一种Android应用程序安装包的生成方法,其特征在于,包括:
步骤1,通过可视化入口接收对于Android应用程序安装包的配置数据,其中,对于Android应用程序安装包的配置数据,包括:配置参数和接口环境资源;所述配置参数,包括:接口环境资源选项、自动化测试开关、缓存开关、渠道号和Android应用程序安装包名称;所述接口环境资源选项,包括:测试环境、开发环境、发布环境、预上线环境;
步骤2,基于所述配置数据替换掉Android应用程序代码中的相应参数;
步骤3,通过执行打包命令进行打包,以生成Android应用程序安装包。
2.根据权利要求1所述的Android应用程序安装包的生成方法,其特征在于,由Android应用程序代码中gradle脚本模块执行步骤1~3;或者,
ant脚本模块执行所述步骤1~2之后,调用Android应用程序代码中gradle脚本模块执行步骤3。
3.根据权利要求2所述的Android应用程序安装包的生成方法,其特征在于,所述方法,还包括:在gradle脚本模块执行操作之前,用规范的gradle脚本模块替换掉Android应用程序代码中的gradle脚本模块。
4.根据权利要求1~3中任一项所述的Android应用程序安装包的生成方法,其特征在于,所述步骤3,还包括:
对生成的Android应用程序安装包进行签名及代码优化。
5.一种Android应用程序安装包的生成装置,其特征在于,包括:
数据接收模块,用于通过可视化入口接收对于Android应用程序安装包的配置数据,其中,对于Android应用程序安装包的配置数据,包括:配置参数和接口环境资源;所述配置参数,包括:接口环境资源选项、自动化测试开关、缓存开关、渠道号和Android应用程序安装包名称;所述接口环境资源选项,包括:测试环境、开发环境、发布环境、预上线环境;
参数替换模块,用于所述配置数据替换掉Android应用程序代码中的相应参数;
程序打包模块,用于通过执行打包命令进行打包,以生成Android应用程序安装包。
6.根据权利要求5所述的Android应用程序安装包的生成装置,其特征在于,所述装置中的各模块均设置于Android应用程序代码中gradle脚本模块中进行执行;或者,
所述数据接收模块和所述参数替换模块设置于ant脚本模块进行执行,所述程序打包模块设置于Android应用程序代码中gradle脚本模块中进行执行。
7.根据权利要求6所述的Android应用程序安装包的生成装置,其特征在于,所述装置,还包括:
gradle脚本替换模块,用于在gradle脚本模块执行操作之前,用规范的gradle脚本模块替换掉Android应用程序代码中的gradle脚本模块。
8.根据权利要求5~7中任一项所述的Android应用程序安装包的生成装置,其特征在于,所述程序打包模块,还用于:
对生成的Android应用程序安装包进行签名及代码优化。
CN201511019024.2A 2015-12-29 2015-12-29 Android应用程序安装包的生成方法及装置 Active CN106933609B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511019024.2A CN106933609B (zh) 2015-12-29 2015-12-29 Android应用程序安装包的生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511019024.2A CN106933609B (zh) 2015-12-29 2015-12-29 Android应用程序安装包的生成方法及装置

Publications (2)

Publication Number Publication Date
CN106933609A CN106933609A (zh) 2017-07-07
CN106933609B true CN106933609B (zh) 2021-01-15

Family

ID=59441542

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511019024.2A Active CN106933609B (zh) 2015-12-29 2015-12-29 Android应用程序安装包的生成方法及装置

Country Status (1)

Country Link
CN (1) CN106933609B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391155A (zh) * 2017-07-31 2017-11-24 北京北信源软件股份有限公司 一种打包方法及装置
CN108287694B (zh) * 2017-08-08 2021-01-19 深圳壹账通智能科技有限公司 应用程序构建方法、系统、计算机设备和存储介质
CN107729000A (zh) * 2017-11-24 2018-02-23 北京小米移动软件有限公司 应用程序安装包生成方法及装置
CN108415744A (zh) * 2018-02-08 2018-08-17 宁夏翔羚科技有限公司 应用程序名称修改方法、装置、电子设备及存储介质
CN110162310B (zh) * 2018-02-12 2022-03-01 腾讯科技(深圳)有限公司 插件接口测试方法及装置、计算机设备及存储介质
CN110147227B (zh) * 2018-07-06 2023-07-18 杭州涂鸦信息技术有限公司 一种用于技能配置的程序安装包生成方法及系统
CN109189466B (zh) * 2018-07-23 2022-04-05 北京城市网邻信息技术有限公司 一种马甲包打包方法、装置、电子设备及存储介质
CN110895471A (zh) * 2018-09-12 2020-03-20 北京京东尚科信息技术有限公司 安装包生成方法、装置、介质及电子设备
CN111290780B (zh) * 2020-03-10 2024-04-05 易方信息科技股份有限公司 一种自动化上传SDK到maven仓库的方法
CN111399864B (zh) * 2020-03-16 2023-07-07 北京五八信息技术有限公司 一种安卓系统应用程序基础包生成方法以及生成装置
CN111857801B (zh) * 2020-07-08 2022-07-05 广州云徙科技有限公司 一种移动应用的构建方法
CN111949314A (zh) * 2020-08-20 2020-11-17 苏州朗动网络科技有限公司 应用安装包的生成方法、装置、服务器和存储介质
CN116450534B (zh) * 2023-06-19 2023-08-22 建信金融科技有限责任公司 移动端应用程序的生成方法、装置、设备及介质
CN116755713A (zh) * 2023-08-16 2023-09-15 深圳传趣网络技术有限公司 应用程序的生成方法、装置、设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0926594B1 (en) * 1997-12-17 2007-05-23 Hewlett-Packard Company, A Delaware Corporation Method of using primary and secondary processors
CN101334729B (zh) * 2008-08-07 2012-01-25 金蝶软件(中国)有限公司 软件包的处理方法及装置
CN103970648B (zh) * 2013-01-30 2016-12-28 百度国际科技(深圳)有限公司 安装包的测试方法和系统
CN104077118A (zh) * 2013-03-27 2014-10-01 腾讯科技(深圳)有限公司 一种应用程序的资源的定制方法及装置
CN104021001A (zh) * 2014-06-18 2014-09-03 董崇军 一种软件发布方法和系统
CN104820602A (zh) * 2015-05-18 2015-08-05 北京瑞星信息技术有限公司 软件包发布方法、装置及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"APK改之理(APK IDE)修改APK简单的入门教程";开启美好;《http://www.360doc.com/content/15/1112/10/2340477_512518147.shtml》;20151112;第1-2页 *

Also Published As

Publication number Publication date
CN106933609A (zh) 2017-07-07

Similar Documents

Publication Publication Date Title
CN106933609B (zh) Android应用程序安装包的生成方法及装置
CN104281518A (zh) 终端应用测试方法、装置、系统、平台及移动终端
CN102289378B (zh) 自动生成应用程序的方法
WO2016177124A1 (zh) 一种实现持续集成测试的方法及装置
CN107168749B (zh) 一种编译方法、装置、设备和计算机可读存储介质
CN108073400A (zh) 软件自动化构建方法、服务器及存储介质
CN107733985B (zh) 一种云计算系统功能组件部署方法及装置
US8572583B2 (en) Method and system for testing software for industrial machine
CN105446712B (zh) 一种应用程序缺陷修补方法及装置
CN105447643A (zh) 一种面向云计算平台的科学工作流系统及方法
CN106845162B (zh) 一种重签名方法及装置
CN107015902B (zh) 一种测试方法和设备
CN105159738A (zh) 一种热补丁实现方法及系统
CN113064630B (zh) 移动端app自动打包方法、系统、电子设备及存储介质
US10866803B2 (en) Generating interaction libraries
CN102662648A (zh) 一种通讯终端的嵌入式软件开发仿真平台及其应用
CN105511868A (zh) 一种打包iOS应用程序的方法
CN103513966A (zh) 基于组件的php开发框架
CN104133676A (zh) 一种基于脚本的功能执行方法和设备
CN106020905A (zh) 一种微控制器固件开发与更新的方法及系统
CN104991810B (zh) 自动添加apk到安卓系统中的方法及处理系统
CN105591779A (zh) 网元巡检方法及装置
CN106484452B (zh) 一种软件平台的统一配置管理方法和装置
CN105205005A (zh) 一种服务器的cpu测试方法及系统
CN107678969B (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
GR01 Patent grant
GR01 Patent grant