CN109101244B - 一种ios系统一体化自动打包方法 - Google Patents

一种ios系统一体化自动打包方法 Download PDF

Info

Publication number
CN109101244B
CN109101244B CN201810803035.7A CN201810803035A CN109101244B CN 109101244 B CN109101244 B CN 109101244B CN 201810803035 A CN201810803035 A CN 201810803035A CN 109101244 B CN109101244 B CN 109101244B
Authority
CN
China
Prior art keywords
app
signature
generating
ios system
server
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
CN201810803035.7A
Other languages
English (en)
Other versions
CN109101244A (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.)
Hongqiao Hi Tech Group Co ltd
Original Assignee
Zhuhai Hongqiao High Tech 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 Zhuhai Hongqiao High Tech Co ltd filed Critical Zhuhai Hongqiao High Tech Co ltd
Priority to CN201810803035.7A priority Critical patent/CN109101244B/zh
Publication of CN109101244A publication Critical patent/CN109101244A/zh
Application granted granted Critical
Publication of CN109101244B publication Critical patent/CN109101244B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种ios系统一体化自动打包方法,所述方法包括:ios系统从SVN服务器获取最新的APP代码;对APP代码生成签名,获得签名字符串;设定APP的参数信息;替换APP图标及启动LOGO;基于所述签名字符串和所述参数信息,调用xcodebuild clean archive build命令进行清除,编译,完成之后再调用xcodebuild命令打包,生成.ipa文件并移动到指定目录。本发明提供的ios系统一体化自动打包方法在服务端(JAVA)封装参数,再调用Python脚本的方法,结合多种语言实现一体化自动化打包,与传统的安装包打包方法相比,本发明的打包方法采用以系统配置为输入参数,全程自动化打包的方式,可以方便快捷的完成打包并且其效率高,出错率低。

Description

一种ios系统一体化自动打包方法
技术领域
本发明属于计算机技术领域,具体涉及一种ios系统一体化自动打包方法。
背景技术
现有的安装包打包技术需要在每次打包之前,针对不同产品不同版本,手工修改配置文件(APP名称,版本等信息),上传签名文件,才能进行打包操作。
这种方法效率低下,并且可能因为是人工操作容易遗漏、信息不对称导致打包失败。
发明内容
为了解决现有技术存在的上述问题,本发明提供了一种ios系统一体化自动打包方法。
本发明的技术方案如下:
一种ios系统一体化自动打包方法,所述方法包括:
ios系统从SVN服务器获取最新的APP代码;
对APP代码生成签名,获得签名字符串;
设定APP的参数信息;
替换APP图标及启动LOGO;
基于所述签名字符串和所述参数信息,调用xcodebuild clean archive build命令进行清除,编译,完成之后再调用xcodebuild命令打包,生成.ipa文件并移动到指定目录。
可选的,生成所述.ipa文件并移动到指定目录后,所述方法还包括:上传所述.ipa文件至服务器并生成下载二维码。
优选的,在所述ios系统从SVN服务器获取最新的APP代码之前,所述方法还包括:
判断存放代码的目录是否存在,获得第一判断结果;
当所述第一判断结果为否时,则创建存放代码的目录并从SVN服务器上checkout代码;
当所述第一判断结果为是时,则判断所述目录是否是SVN服务器的目录,获得第二判断结果;
当所述第二判断结果为是时,则update;
当所述第二判断结果为否时,则checkout。
优选的,所述对APP代码生成签名,获得签名字符串的方法为:
从系统配置中获取证书别名,密码,在开发工具中根据引导生成签名,获取签名字符串。
优选的,所述设定APP的参数信息的方法为:
从系统配置信息中获取APP名称、版本号、签名、包名、后台服务访问地址等参数,替换到打包配置文件中对应节点的值。
优选的,所述替换APP图标及启动LOGO的方法为:
从服务端下载对应的图片,替换不同规格的LOGO文件和封面。
优选的,所述上传所述.ipa文件至服务器并生成下载二维码的方法为:
将所述.ipa文件上传到fir.im,成功后生成包含下载APP的短码地址URL的二维码。
与现有技术相比,本发明提供的技术方案具有如下有益效果或优点:
本发明提供的ios系统一体化自动打包方法,在服务端(JAVA)封装参数,再调用Python脚本的方法,结合多种语言实现一体化自动化打包,与传统的安装包打包方法(在开发工具或者自动编译工具中手工设置参数,上传签名文件,再进行打包)相比,本发明的打包方法采用以系统配置为输入参数,全程自动化打包的方式,可以方便快捷的完成打包并且其效率高,出错率低。
附图说明
图1是本发明实施例提供的一种ios系统一体化自动打包方法的方法流程图;
图2是本发明实施例中ios系统从SVN服务器获取最新的APP代码的主要步骤示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
如图1所示,本发明实施例提供了一种ios系统一体化自动打包方法,所述方法包括:
步骤S1:ios系统从SVN服务器获取最新的APP代码。
在具体的实施过程中,如图2所示,步骤S1中在所述ios系统从SVN服务器获取最新的APP代码之前,所述方法还包括:
步骤S11:判断存放代码的目录是否存在,获得第一判断结果;
当所述第一判断结果为否时,则创建存放代码的目录并从SVN服务器上checkout代码;
当所述第一判断结果为是时,则执行步骤S12:判断所述目录是否是SVN服务器的目录,获得第二判断结果;
当所述第二判断结果为是时,则update;
当所述第二判断结果为否时,则checkout。
完成步骤S1之后,执行步骤S2:对APP代码生成签名,获得签名字符串。
在具体的实施过程中,步骤S2中所述对APP代码生成签名,获得签名字符串的方法具体为:从系统配置中获取证书别名,密码,在开发工具中根据引导生成签名,获取签名字符串。
完成步骤S2之后,执行步骤S3:设定APP的参数信息。
在具体的实施过程中,步骤S3中所述设定APP的参数信息的方法具体为:
从系统配置信息中获取APP名称、版本号、签名、包名、后台服务访问地址等参数,替换到打包配置文件中对应节点的值。
完成步骤S3之后,执行步骤S4:替换APP图标及启动LOGO。
在具体的实施过程中,步骤S4中所述替换APP图标及启动LOGO的具体方法为:
从服务端下载对应的图片,替换不同规格的LOGO文件和封面。其中,替换不同规格的LOGO文件以及封面的数量可以根据需要替换,如可以是替换不同规格的LOGO文件5张,封面1张。
完成步骤S4之后,执行步骤S5:基于所述签名字符串和所述参数信息,调用xcodebuild clean archive build命令进行清除,编译,完成之后再调用xcodebuild命令打包,生成.ipa文件并移动到指定目录。
在具体的实施过程中,进一步的,在完成步骤S5之后,还包括步骤S6:上传所述.ipa文件至服务器并生成下载二维码。
在具体的实施过程中,步骤S6中所述上传所述.ipa文件至服务器并生成下载二维码的具体方法为:
将所述.ipa文件上传到fir.im,成功后生成包含下载APP的短码地址URL的二维码。
本发明实施例提供的ios系统一体化自动打包方法,在服务端(JAVA)封装参数,再调用Python脚本的方法,结合多种语言实现一体化自动化打包,与传统的安装包打包方法(在开发工具或者自动编译工具中手工设置参数,上传签名文件,再进行打包)相比,本发明的打包方法采用以系统配置为输入参数,全程自动化打包的方式,可以方便快捷的完成打包并且其效率高,出错率低。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (4)

1.一种ios系统一体化自动打包方法,其特征在于,所述方法包括:
ios系统从SVN服务器获取最新的APP代码;
对APP代码生成签名,获得签名字符串,包括:
从系统配置中获取证书别名,密码,在开发工具中根据引导生成签名,获取签名字符串;
设定APP的参数信息;
替换APP图标及启动LOGO,包括:
从服务端下载对应的图片,替换不同规格的LOGO文件和封面;
基于所述签名字符串和所述参数信息,调用xcodebuild clean archive build命令进行清除,编译,完成之后再调用xcodebuild命令打包,生成.ipa文件并移动到指定目录;
所述设定APP的参数信息的方法为:
从系统配置信息中获取APP名称、版本号、签名、包名、后台服务访问地址等参数,替换到打包配置文件中对应节点的值;
生成所述.ipa文件并移动到指定目录后,所述方法还包括:
上传所述.ipa文件至服务器并生成下载二维码;
所述上传所述.ipa文件至服务器并生成下载二维码的方法为:
将所述.ipa文件上传到fir.im,成功后生成包含下载APP的短码地址URL的二维码。
2.根据权利要求1所述的ios系统一体化自动打包方法,其特征在于,在所述ios系统从SVN服务器获取最新的APP代码之前,所述方法还包括:
判断存放代码的目录是否存在,获得第一判断结果;
当所述第一判断结果为否时,则创建存放代码的目录并从SVN服务器上checkout代码;
当所述第一判断结果为是时,则判断所述目录是否是SVN服务器的目录,获得第二判断结果;
当所述第二判断结果为是时,则update;
当所述第二判断结果为否时,则checkout。
3.根据权利要求1所述的ios系统一体化自动打包方法,其特征在于,所述对APP代码生成签名,获得签名字符串的方法为:
从系统配置中获取证书别名,密码,在开发工具中根据引导生成签名,获取签名字符串。
4.根据权利要求1所述的ios系统一体化自动打包方法,其特征在于,所述替换APP图标及启动LOGO的方法为:
从服务端下载对应的图片,替换不同规格的LOGO文件和封面。
CN201810803035.7A 2018-07-20 2018-07-20 一种ios系统一体化自动打包方法 Active CN109101244B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810803035.7A CN109101244B (zh) 2018-07-20 2018-07-20 一种ios系统一体化自动打包方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810803035.7A CN109101244B (zh) 2018-07-20 2018-07-20 一种ios系统一体化自动打包方法

Publications (2)

Publication Number Publication Date
CN109101244A CN109101244A (zh) 2018-12-28
CN109101244B true CN109101244B (zh) 2022-06-03

Family

ID=64846990

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810803035.7A Active CN109101244B (zh) 2018-07-20 2018-07-20 一种ios系统一体化自动打包方法

Country Status (1)

Country Link
CN (1) CN109101244B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111142930B (zh) * 2019-12-30 2021-07-16 瑞庭网络技术(上海)有限公司 安装包文件打包方法、装置、终端设备及存储介质
CN112965744A (zh) * 2021-03-16 2021-06-15 江苏斑马软件技术有限公司 一种rn混合式app的批量打包方法及装置
CN113282284A (zh) * 2021-06-24 2021-08-20 成都科来网络技术有限公司 一种适配多定制化项目的打包方法及打包系统
CN114039743A (zh) * 2021-09-27 2022-02-11 成都鲁易科技有限公司 数据的加密方法、装置、存储介质以及终端

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106066808A (zh) * 2016-05-30 2016-11-02 浪潮软件股份有限公司 一种ios应用构建服务器、集群和方法
CN107301074A (zh) * 2017-06-26 2017-10-27 中广热点云科技有限公司 在服务器上自动打包apk安装包的方法及系统
CN107450941A (zh) * 2017-06-26 2017-12-08 深圳市小牛在线互联网信息咨询有限公司 自动打包方法、装置、存储介质和计算机设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9508218B2 (en) * 2006-11-10 2016-11-29 Bally Gaming, Inc. Gaming system download network architecture
CN104423955A (zh) * 2013-09-05 2015-03-18 北大方正集团有限公司 实现iOS应用自动编译的方法及系统
CN104714788B (zh) * 2013-12-12 2018-12-11 腾讯科技(深圳)有限公司 一种软件安装包自动生成的方法及装置
CN104516738A (zh) * 2014-12-15 2015-04-15 北京金和软件股份有限公司 一种app应用的开发与发布一体化实现方法
CN104572237B (zh) * 2015-01-19 2017-12-12 上海动联信息技术股份有限公司 一种UKey安装包自动快速生成系统及其方法
CN105511868B (zh) * 2015-11-30 2019-04-26 深圳联友科技有限公司 一种打包iOS应用程序的方法
CN105867950A (zh) * 2016-05-31 2016-08-17 广东能龙教育股份有限公司 一种基于Gradle和Svn在线自动化打包方法
CN106126290B (zh) * 2016-06-27 2019-08-13 微梦创科网络科技(中国)有限公司 应用程序优化方法、装置及系统
CN106155751B (zh) * 2016-08-02 2019-12-17 传线网络科技(上海)有限公司 应用打包发布方法及装置
CN106445548B (zh) * 2016-10-11 2021-01-01 武汉斗鱼网络科技有限公司 一种测试包下发方法和装置
CN107391155A (zh) * 2017-07-31 2017-11-24 北京北信源软件股份有限公司 一种打包方法及装置
CN107632829A (zh) * 2017-08-03 2018-01-26 大唐网络有限公司 一种基于iOS系统下的App自动化持续集成系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106066808A (zh) * 2016-05-30 2016-11-02 浪潮软件股份有限公司 一种ios应用构建服务器、集群和方法
CN107301074A (zh) * 2017-06-26 2017-10-27 中广热点云科技有限公司 在服务器上自动打包apk安装包的方法及系统
CN107450941A (zh) * 2017-06-26 2017-12-08 深圳市小牛在线互联网信息咨询有限公司 自动打包方法、装置、存储介质和计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
物联网终端设备软件的开发系统研究;王攀藻;《计算机科学》;20170615;全文 *

Also Published As

Publication number Publication date
CN109101244A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
CN109101244B (zh) 一种ios系统一体化自动打包方法
CN105335183A (zh) 一种软件升级方法及系统
CN103942067B (zh) 智能设备自动清理软件安装包文件的方法及装置
CN104866342A (zh) 在智能终端上同时开启多个同一应用程序的方法和装置
CN110083360B (zh) 一种应用程序代码的编译方法、装置、设备及存储介质
CN110442371B (zh) 一种发布代码的方法、装置、介质及计算机设备
CN106371881B (zh) 一种用于服务器内程序版本更新的方法和系统
CN108897547B (zh) 一种软件自动化部署方法及装置
EP3267308A1 (en) Application loading method and device
CN104636172B (zh) 一种应用升级方法和装置
CN109933350B (zh) 在应用中嵌入代码的方法、装置及电子设备
CN104317618A (zh) 一种固件分区处理方法和装置
CN108874429B (zh) 一种Android系统一体化自动打包方法
CN105159718A (zh) 固件升级方法及装置
CN109344619A (zh) 应用程序的热修复方法和装置
CN111273942A (zh) 一种代码生成方法、存储介质、电子设备及系统
CN105373545A (zh) 一种图片显示方法及装置
CN104461621A (zh) 一种更新属性信息的方法及装置
CN105117499A (zh) 基于云盘的文件显示方法及装置
CN105068822A (zh) 一种实时滤镜的在线配置方法、系统及拍摄终端
CN108694049B (zh) 一种更新软件的方法和设备
CN109413499A (zh) 安卓电视固件的配置方法、系统及设备
CN110113391B (zh) 一种客户端上线方法、装置及一种客户端运行方法、装置
KR102141749B1 (ko) App 프로그램 실행 방법 및 장치
WO2019041891A1 (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
CP01 Change in the name or title of a patent holder

Address after: 519000 1st floor, area D, South Software Park, No.1, Tangjiawan Software Park Road, Zhuhai City, Guangdong Province

Patentee after: Hongqiao Hi Tech Group Co.,Ltd.

Address before: 519000 1st floor, area D, South Software Park, No.1, Tangjiawan Software Park Road, Zhuhai City, Guangdong Province

Patentee before: ZHUHAI HONGQIAO HIGH-TECH Co.,Ltd.

CP01 Change in the name or title of a patent holder