head.png

BWiOSPackage

iOS Continuous Integration

Github:https://github.com/bobwongs/BWiOSPackage

Contents

  • iOS Xcode Project
  • Xcode打包
  • 脚本打包
  • iOS ipa包
  • 持续集成
  • 自动化测试
  • Reference
  • 经验总结
  • Follow Me

iOS Xcode Project

  • Workspace

    简单来说,Workspace就是一个容器,在该容器中可以存放多个你创建的Xcode Project, 以及其他的项目中需要使用到的文件。使用Workspace的好处有,1),扩展项目的可视域,即可以在多个项目之间跳转,重构,一个项目可以使用另一个项目的输出。Workspace会负责各个Project之间提供各种相互依赖的关系;2),多个项目之间共享Build目录。

  • Project

    指一个项目,该项目会负责管理生成一个或者多个软件产品的全部文件和配置,一个Project可以包含多个Target。

  • Target

    一个Target是指在一个Project中构建的一个产品,它包含了构建该产品的所有文件,以及如何构建该产品的配置。

  • Scheme

    一个定义好构建过程的Target成为一个Scheme。可在Scheme中定义的Target的构建过程有:Build/Run/Test/Profile/Analyze/Archive

  • Build Setting

    配置产品的Build设置,比方说,使用哪个Architectures?使用哪个版本的SDK?。在Xcode Project中,有Project级别的Build Setting,也有Target级别的Build Setting。Build一个产品时一定是针对某个Target的,因此,XCode中总是优先选择Target的Build Setting,如果Target没有配置,则会使用Project的Build Setting。

  • Build Phases

    • Target Dependencies
    • Compile Sources(编译资源,可设置Compiler Flags)
    • Link Binary With Libraries
    • Copy Bundle Resources(直接拷贝到包里面的资源)
    • Run Script(运行脚本,运行脚本不用拷贝到Bundle
    • 测试环境已经搭建好了,那么下一步的工作,自然就该开始测试了。但是为了测试,我们需要先把应用跑起来。这个步骤每个iOS开发者可能都做过,就是点击Xcode的run,或者cmd+R,然后模拟器就启动了。那么这中间都发生了什么呢?

      这次的内容,主要讨论从点击run到启动模拟器之前的部分,是为以后命令行运行iOS应用做准备,为以后Jenkins启动应用打下基础。关于Android,将会在以后讲述。

      内容很基础,但是坑也不少。

      欢迎入坑

iOS脚本打包和持续集成相关推荐

  1. 基于 KIF 的 iOS UI 自动化测试和持续集成

    客户端 UI 自动化测试是大多数测试团队的研究重点,本文介绍猫眼测试团队在猫眼 iOS 客户端实践的基于 KIF 的 UI 自动化测试和持续集成过程. 一.测试框架的选择 iOS UI 自动化测试框架 ...

  2. Flutter-解决混合开发iOS脚本打包遇到的问题

    收录:LinXunFeng 使用Xcode手动打包是正常的,但是使用脚本打包会报错,错误如下: The following build commands failed:PhaseScriptExecu ...

  3. IOS使用Jenkins进行持续集成

    概述:为了方便测试人员测试,利用jenkins进行自动化打包并部署,减少开发人员手动打包.解除开发与测试之间的耦合,提高开发效率. 1.软件下载 需要的软件包下载地址:软件包 1.1 Tomcat安装 ...

  4. 【狂云歌之unity_vr】unity项目持续集成dailybuild以及多平台打包管理

    [狂云歌之unity_vr]unity项目持续集成dailybuild以及多平台打包管理 前言  持续集成的意义就不多说了.unity通常打包一般就直接build&run,但是在实际项目中,往 ...

  5. Jenkins——Jenkins介绍+基于云平台的Jenkins安装和持续集成环境配置(插件+用户权限+凭据+Maven打包)

    Jenkins--Jenkins介绍+基于云平台的Jenkins安装和持续集成环境配置(插件+用户权限+凭据+Maven打包) 持续集成及Jenkins介绍 软件开发生命周期 什么是持续集成? 持续集 ...

  6. EasyClick iOS脚本_免越狱_免硬件工程打包IPA使用说明

    EasyClick iOS脚本打包IPA EasyClick iOS脚本,免越狱,免硬件支持打包ipa包,并安装到手机上执行,具体打包流程如下 选择需要打包的工程 必须要选择EasyClick iOS ...

  7. 构建基于Jenkins + Github的持续集成环境

    登录 | 注册 John_cdy的专栏 学无止境 目录视图 摘要视图 订阅 有奖征资源,博文分享有内涵 6月推荐文章汇总 CSDN博文大赛初赛晋级名单公布 关注CSDN社区微信,福利多多 构建基于Je ...

  8. Android 持续集成实践(三)——编写 .gitlab-ci.yml 实现自动化

    文章目录 前言 系列文章 Android 持续集成实践(三)--编写 .gitlab-ci.yml 实现自动化 要实现的效果 定义 gitlab-ci 工作场景阶段 定义 build 任务 定义 re ...

  9. Unity脚本打包和Jenkins打包

    首先我们假设所有的环境和参数都配置好了. 常规打包: 打开Unity -> File -> Building Setting -> 点击 Build 按钮. 脚本打包:不需要打开Un ...

最新文章

  1. 一个不错的安卓下ssh客户端
  2. javascript:12种JavaScript MVC框架之比较
  3. zigbee vs 433
  4. 微信和html5的使用感觉,微信小程序和HTML5相比有何不同呢?
  5. 【数据结构与算法】之深入解析“键盘行”的求解思路与算法示例
  6. python矩阵中的冒号:
  7. 【JAVA 第三章 流程控制语句】课后习题 输出正整数的顺序相反数
  8. dell服务器硬盘锁_服务器十大排行
  9. 2、启动Spring Boot 容器
  10. oracle安装实验,Oracle之课程实验一(安装oracle)
  11. 小程序swiper效果高宽设置(微信小程序交流群:604788754)
  12. Swing 设置无边框Frame
  13. 计算机网络中出现异常流量,计算机网络下网络流量异常的检测算法
  14. P1282 多米诺骨牌题解
  15. py:os模块:getcwd等处理文件和目录的方法
  16. 南外计算机课,南外河西初中召开仿生机器人创客空间项目建设方案答辩论证会...
  17. 刷脸支付不用带手机不需要扫二维码
  18. 运筹说 第85期 | 只有初中学历的数学家
  19. android nfc驱动,Android NFC 简单梳理
  20. 关于Win10工具栏WIFI消失与网络功能丧失的一种解决办法

热门文章

  1. 系列漫画:神秘的程序员们 全集连载——绝对经典
  2. JAVA通过身份证号码获取出生年月、年龄及性别
  3. debian 9 ssh root权限登录
  4. 使用HTML+CSS写一个静态页面
  5. js获取本机mac地址,IP地址
  6. JavaScript 允许自定义对象,运动兑换商品的小程序,微信步数兑换积分,会员营销软件,让顾客更加愿意来店消费,提升店铺的会员粘性及活越性
  7. 收藏夹吃灰系列(九):实现图片倒排序并取出时间最近的那一张!并下载到本地 | 超级详细,建议收藏!
  8. 超级喜欢老罗,2016发布了新手机
  9. LeetCode 1011. 在 D 天内送达包裹的能力
  10. “爱你千百遍” 消息连发