CN108614699A - 一种在windows系统上持续集成Android项目的方法和系统 - Google Patents

一种在windows系统上持续集成Android项目的方法和系统 Download PDF

Info

Publication number
CN108614699A
CN108614699A CN201611186417.7A CN201611186417A CN108614699A CN 108614699 A CN108614699 A CN 108614699A CN 201611186417 A CN201611186417 A CN 201611186417A CN 108614699 A CN108614699 A CN 108614699A
Authority
CN
China
Prior art keywords
android
machine
jenkins
projects
compilation script
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
CN201611186417.7A
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.)
Aisino Corp
Original Assignee
Aisino Corp
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 Aisino Corp filed Critical Aisino Corp
Priority to CN201611186417.7A priority Critical patent/CN108614699A/zh
Publication of CN108614699A publication Critical patent/CN108614699A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本发明涉及一种在windows系统上持续集成Android项目的方法和系统,所述方法包括:在linux系统上搭建开源软件jenkins的主服务器;在所述主服务器上访问所述Jenkins,并在所述Jenkins上配置从机器的标签属性,以及将安全控制中的TCP端口的状态设置为启用安全;在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器上所述Jenkins并进入从节点设置界面,启动从机器;以及在从机器上配置安卓Android项目的编译环境,并且编译生成安装包apk文件以部署到从机器上运行的Android终端。

Description

一种在windows系统上持续集成Android项目的方法和系统
技术领域
本发明涉及计算机应用领域,并且更具体地,涉及一种在windows系统上持续集成Android项目的方法和系统。
背景技术
目前在智能终端领域,Android系统作为主要系统,占有很大的市场比例,应用项目也越来越多,目前一般测试组面临测试资源紧张,测试周期较短,测试人员技能参差不齐的问题,导致在Android系统的测试中,测试周期长,对测试人员技能要求高。
发明内容
为了解决背景技术存在的上述问题,本发明提供一种在windows系统上持续集成Android项目的方法,其特征在于,所述方法包括:
在linux系统上搭建开源软件jenkins的主服务器;
在所述主服务器上访问所述Jenkins,并在所述Jenkins上配置从机器的标签属性,以及将安全控制中的TCP端口的状态设置为启用安全;
在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器上所述Jenkins并进入从节点设置界面,启动从机器;以及
在从机器上配置安卓Android项目的编译环境,并且编译生成安装包apk文件以部署到从机器上运行的Android终端。
进一步地,在从机器上配置Android项目的编译环境,并且编译生成apk文件以部署到从机器上运行的Android终端包括:
步骤1:使用ANT生成Android项目的编译脚本,在Jenkins上添加Android项目,通过配置标签属性确定在从机器上执行编译脚本,其中,所述编译脚本中具有连接资源库的配置及下载程序源码的路径、用户名和密码;
步骤2:一键触发或定时触发执行编译脚本,输出安装包apk文件;
步骤3:通过蓝牙或mac地址对apk进行对应设备的转发,实现软件更新。
进一步地,在从机器上配置Android项目的编译环境,并且编译生成apk文件以部署到从机器上运行的Android终端的步骤2中执行编译脚本时,如果发生错误,在控制台输出界面输出错误日志后,根据错误日志进行问题的修改,然后重新执行步骤2,直至编译成功。
进一步地,实现软件更新后通过编译脚本对资源库中下载的程序源码进行标记,以实现版本管理控制,保证资源库的可追溯和完整性。
根据本发明的另一方面,本发明还涉及一种在windows系统上持续集成Android项目的系统,其特征在于,所述系统包括:
持续集成环境平台搭建单元,其用于在linux系统上搭建开源软件jenkins的主服务器,并在所述主服务器上访问所述Jenkins,在所述Jenkins上配置从机器的标签属性和将安全控制中的TCP端口的状态设置为启用安全,在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器并进入从节点设置界面,启动从机器;以及
Android项目编译配置单元,其用于在启动的配置有从节点的计算机上配置Android项目的编译环境,并且编译生成apk文件以部署到所述计算机上运行的Android终端。
进一步地,Android项目编译配置单元配置Android项目编译环境,编译生成apk文件并部署到Android终端包括:
使用ANT编写Android项目的编译脚本;
在Jenkins上添加Android项目,通过配置标签属性确定在从机器上执行编译脚本,其中,所述编译脚本中有连接资源库的配置及下载程序源码的路径、用户名和密码;
一键触发或定时触发执行编译脚本,输出apk文件;以及
通过蓝牙或mac地址对apk进行对应设备的转发,实现软件更新。
进一步地,所述系统还包括版本管理单元,其用于通过编译脚本对资源库中下载的程序源码进行标记,以实现版本管理控制,保证资源库的可追溯和完整性。
进一步地,Android项目编译配置单元执行编译脚本时,如果发生错误,在控制台输出界面输出错误日志后,根据错误日志进行问题的修改,然后重新执行修改后的编译译本,直至编译成功。
在本发明中,将技术操作融合到工具中,通过jenkins界面一键触发完成,由工作人员用Ant实现编译脚本的开发,jenkins中项目配置,用Ant实现测试通过版本发布的开发等。实际操作人员通过界面一键触发编译即可完成。有效降低了对专业人员的要求,提高了执行效率。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1是本发明具体实施方式的在windows系统上持续集成Android项目的方法的流程图;
图2是本发明具体实施方式的在配置有从节点的计算机上配置Android项目的编译环境的方法的流程图;以及
图3是本发明具体实施方式的在windows系统上持续集成Android项目的系统的结构图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
图1是本发明具体实施方式的在windows系统上持续集成Android项目的方法的流程图。如图1所示,在windows系统上持续集成Android项目的方法100从步骤S101开始。
在步骤S101,在linux系统上搭建开源软件jenkins的主服务器。
在步骤S102,在所述主服务器上访问所述Jenkins,并在所述Jenkins上配置从机器的标签属性,以及将安全控制中的TCP端口的状态设置为启用安全。
在步骤S103,在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器上所述Jenkins并进入从节点设置界面,启动从机器。
在步骤S104,在从机器上配置安卓Android项目的编译环境,并且编译生成安装包apk文件以部署到从机器上运行的Android终端。
图2是本发明具体实施方式的在配置有从节点的计算机上配置Android项目的编译环境的方法的流程图。如图2所示,在配置有从节点的计算机上配置Android项目的编译环境的方法200从步骤S201开始。
在步骤S201,使用ANT生成Android项目的编译脚本,在Jenkins上添加Android项目,通过配置标签属性确定在从机器上执行编译脚本,其中,所述编译脚本中具有连接资源库的配置及下载程序源码的路径、用户名和密码。
在步骤S202,一键触发或定时触发执行编译脚本,输出apk文件。
在步骤S203,通过蓝牙或mac地址对apk进行对应设备的转发,实现软件更新。
在步骤S204,实现软件更新后通过编译脚本对资源库中下载的程序源码进行标记,以实现版本管理控制,保证资源库的可追溯和完整性。
优选地,在步骤S202中执行编译脚本时,如果发生错误,在控制台输出界面输出错误日志后,根据错误日志进行问题的修改,然后重新执行步骤S202,直至编译成功。
图3是本发明具体实施方式的在windows系统上持续集成Android项目的系统的结构图。如图3所示,在windows系统上持续集成Android项目的系统300包括持续集成环境平台搭建单元301、Android项目编译配置单元302和版本管理单元303。
持续集成环境平台搭建单元301,其用于在linux系统上搭建开源软件jenkins的主服务器,并在所述主服务器上访问所述Jenkins,在所述Jenkins上配置从机器的标签属性和将安全控制中的TCP端口的状态设置为启用安全,在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器并进入从节点设置界面,启动从机器;以及
Android项目编译配置单元302,其用于在启动的配置有从节点的计算机上配置Android项目的编译环境,并且编译生成apk文件以部署到所述计算机上运行的Android终端。
优选地,Android项目编译配置单元配置Android项目编译环境,编译生成apk文件并部署到Android终端包括:
使用ANT编写Android项目的编译脚本;
在Jenkins上添加Android项目,打开配置界面,通过配置标签属性确定在从机器上执行编译脚本,其中,所述编译脚本中有连接资源库的配置及下载程序源码的路径、用户名和密码;
一键触发或定时触发执行编译脚本,输出apk文件;以及
通过蓝牙或mac地址对apk进行对应设备的转发,实现软件更新。
优选地,所述系统还包括版本管理单元303,其用于通过编译脚本对资源库中下载的程序源码进行标记,以实现版本管理控制,保证资源库的可追溯和完整性。
优选地,Android项目编译配置单元302执行编译脚本时,如果发生错误,在控制台输出界面输出错误日志后,根据错误日志进行问题的修改,然后重新执行修改后的编译译本,直至编译成功。
已经通过上述实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。
通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该【装置、组件等】”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。

Claims (8)

1.一种在视窗windows系统上持续集成Android项目的方法,其特征在于,所述方法包括:
在linux系统上搭建开源软件jenkins的主服务器;
在所述主服务器上访问所述Jenkins,并在所述Jenkins上配置从机器的标签属性,以及将安全控制中的TCP端口的状态设置为启用安全;
在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器上所述Jenkins并进入从节点设置界面,启动从机器;以及
在从机器上配置安卓Android项目的编译环境,并且编译生成安装包apk文件以部署到从机器上运行的Android终端。
2.根据权利要求1所述的方法,其特征在于,在从机器上配置Android项目的编译环境,并且编译生成apk文件以部署到从机器上运行的Android终端包括:
步骤1:使用ANT生成Android项目的编译脚本,在Jenkins中添加Android项目,通过配置标签属性确定在从机器上执行编译脚本,其中,所述编译脚本中具有连接资源库的配置及下载程序源码的路径、用户名和密码;
步骤2:一键触发或定时触发执行编译脚本,输出apk文件;
步骤3:通过蓝牙或mac地址对apk进行对应设备的转发,实现软件更新。
3.根据权利要求2所述的方法,其特征在于,在步骤2执行编译脚本时,如果发生错误,在控制台输出界面输出错误日志后,根据错误日志进行问题的修改,然后重新执行步骤2,直至编译成功。
4.根据权利要求2所述的方法,其特征在于,实现软件更新后通过编译脚本对资源库中下载的程序源码进行标记,以实现版本管理控制,保证资源库的可追溯和完整性。
5.一种在windows系统上持续集成Android项目的系统,其特征在于,所述系统包括:
持续集成环境平台搭建单元,其用于在linux系统上搭建开源软件jenkins的主服务器,并在所述主服务器上访问所述Jenkins,在所述Jenkins上配置从机器的标签属性和将安全控制中的TCP端口的状态设置为启用安全,在从机器上设定使用目录,然后将下载的slave.jar文件拷贝到所述设定的使用目录,在从机器上访问主服务器并进入从节点设置界面,启动从机器;以及
Android项目编译配置单元,其用于在启动的配置有从节点的计算机上配置Android项目的编译环境,并且编译生成apk文件以部署到所述计算机上运行的Android终端。
6.根据权利要求5所述的系统,其特征在于,Android项目编译配置单元配置Android项目编译环境,编译生成apk文件并部署到Android终端包括:
使用ANT编写Android项目的编译脚本,在Jenkins中添加Android项目,通过配置标签属性确定在从机器上执行编译脚本,其中,所述编译脚本中有连接资源库的配置及下载程序源码的路径、用户名和密码;
一键触发或定时触发执行编译脚本,输出apk文件;以及
通过蓝牙或mac地址对apk进行对应设备的转发,实现软件更新。
7.根据权利要求6所述的系统,其特征在于,所述系统还包括版本管理单元,其用于通过编译脚本对资源库中下载的程序源码进行标记,以实现版本管理控制,保证资源库的可追溯和完整性。
8.根据权利要求6所述的系统,其特征在于,Android项目编译配置单元执行编译脚本时,如果发生错误,在控制台输出界面输出错误日志后,根据错误日志进行问题的修改,然后重新执行修改后的编译译本,直至编译成功。
CN201611186417.7A 2016-12-20 2016-12-20 一种在windows系统上持续集成Android项目的方法和系统 Pending CN108614699A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611186417.7A CN108614699A (zh) 2016-12-20 2016-12-20 一种在windows系统上持续集成Android项目的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611186417.7A CN108614699A (zh) 2016-12-20 2016-12-20 一种在windows系统上持续集成Android项目的方法和系统

Publications (1)

Publication Number Publication Date
CN108614699A true CN108614699A (zh) 2018-10-02

Family

ID=63657871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611186417.7A Pending CN108614699A (zh) 2016-12-20 2016-12-20 一种在windows系统上持续集成Android项目的方法和系统

Country Status (1)

Country Link
CN (1) CN108614699A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106648786A (zh) * 2016-12-28 2017-05-10 深圳Tcl数字技术有限公司 Android应用程序构建方法及系统
CN109783075A (zh) * 2018-12-13 2019-05-21 平安普惠企业管理有限公司 基于jenkins的分布式任务构建方法、装置、计算机设备
CN111144839A (zh) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 一种项目构建方法、持续集成系统及终端设备
CN113608744A (zh) * 2021-08-04 2021-11-05 上海易景信息科技有限公司 一种用于执行分布式编译的环境构建单元的建立方法及分布式编译系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294514A (zh) * 2013-06-26 2013-09-11 深圳Tcl新技术有限公司 系统软件版本集成方法、编译服务器及系统
CN105468378A (zh) * 2015-12-11 2016-04-06 上海爱数信息技术股份有限公司 一种软件持续集成配置管理方法和系统
WO2016177124A1 (zh) * 2015-07-29 2016-11-10 中兴通讯股份有限公司 一种实现持续集成测试的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294514A (zh) * 2013-06-26 2013-09-11 深圳Tcl新技术有限公司 系统软件版本集成方法、编译服务器及系统
WO2016177124A1 (zh) * 2015-07-29 2016-11-10 中兴通讯股份有限公司 一种实现持续集成测试的方法及装置
CN105468378A (zh) * 2015-12-11 2016-04-06 上海爱数信息技术股份有限公司 一种软件持续集成配置管理方法和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CRAZYFAKE: "Windows下简易Jenkins构建Android自动打包-Ant", 《HTTPS://BLOG.CSDN.NET/APYIXIANG/ARTICLE/DETAILS/50404059》 *
赛跑的蜗牛: "Jenkins的Windows Slave分布式构建和部署", 《HTTPS://WWW.CNBLOGS.COM/LINJIE1930906722/P/5998378.HTML》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106648786A (zh) * 2016-12-28 2017-05-10 深圳Tcl数字技术有限公司 Android应用程序构建方法及系统
CN109783075A (zh) * 2018-12-13 2019-05-21 平安普惠企业管理有限公司 基于jenkins的分布式任务构建方法、装置、计算机设备
CN111144839A (zh) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 一种项目构建方法、持续集成系统及终端设备
CN111144839B (zh) * 2019-12-17 2024-02-02 深圳市优必选科技股份有限公司 一种项目构建方法、持续集成系统及终端设备
CN113608744A (zh) * 2021-08-04 2021-11-05 上海易景信息科技有限公司 一种用于执行分布式编译的环境构建单元的建立方法及分布式编译系统
CN113608744B (zh) * 2021-08-04 2024-02-23 上海易景信息科技有限公司 一种用于执行分布式编译的环境构建单元的建立方法及分布式编译系统

Similar Documents

Publication Publication Date Title
CN108027722B (zh) 在编译和部署中动态更新应用
CN108351770B (zh) 用于安全地实施程序命令的方法和实施环境
Harrison et al. {PARTEMU}: Enabling Dynamic Analysis of {Real-World}{TrustZone} Software Using Emulation
Mednieks Programming android
CN108614699A (zh) 一种在windows系统上持续集成Android项目的方法和系统
US7725888B2 (en) Systems and methods for dynamically linking application software into a running operating system kernel
CN102053836A (zh) 一种Android应用开发的版本管理工具的实现方法
CN113312245B (zh) 一种可集成的波形管理终端及管理方法
CN112558946A (zh) 一种生成代码的方法、装置、设备和计算机可读存储介质
WO2017041499A1 (zh) 一种软件升级方法、系统和计算机可读存储介质
WO2017020459A1 (zh) 一种为宿主配置插件包的方法与装置
CN104636122A (zh) 一种能力组件的共享方法和设备
Pavlov et al. Windows embedded CE 6.0 fundamentals
Rothman et al. Harnessing the UEFI Shell: Moving the platform beyond DOS
CN110007932A (zh) 一种基于局域网大数据处理系统自动部署的方法
CN110688099B (zh) 远距离无线电集成可编程片上系统的微处理器开发方法
CN114647451A (zh) 测试设备驱动器及驱动方法
CN102331938A (zh) 一种将应用软件生成安卓安装包的方法
Ose Exploiting USB Devices with Arduino
Tian et al. Design and implementation of linux file mandatory access control
Barnes et al. SwiftVISA: Controlling Instrumentation with a Swift-based Implementation of the VISA Communication Protocol
Schuster A Policy-Free System-Call Layer for the Hedron Microhypervisor
Giometti BeagleBone Essentials
Giometti Linux Device Driver Development Cookbook: Develop Custom Drivers for Your Embedded Linux Applications
Alliance et al. SunSpec System Validation Platform

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: 20181002