MAC上搭建Jenkins + Android + IOS自动开发部署环境

因为MAC是大小写不敏感的操作系统,很多Linux命令不支持,所以首先要创建大小写敏感的操作系统。

设置静态IP

打开"System Preferences..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Network"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

设置静态IP

MAC上搭建Jenkins + Android + IOS自动开发部署环境

设置Terminal

在"Utilities"中找到Terminal,点击"Terminal"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

右击Terminal图标,选择"Options" -> "Keep in Dock",使之固定在Dock上。

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击菜单栏中的"Terminal" -> "Preferences...",打开Terminal偏好设置

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Profiles",根据个人喜好设置字体大小。

MAC上搭建Jenkins + Android + IOS自动开发部署环境

安装JDK

查看系统是否安装好JDK

$ java -version

我的MAC上还没有装java运行环境

MAC上搭建Jenkins + Android + IOS自动开发部署环境

打开JAVA下载地址  http://www.oracle.com/technetwork/java/javase/downloads/index.html

点击MAC上搭建Jenkins + Android + IOS自动开发部署环境,下载"Mac OS X"版本的JDK

MAC上搭建Jenkins + Android + IOS自动开发部署环境

下载好之后,双击MAC上搭建Jenkins + Android + IOS自动开发部署环境安装

安装好之后,再次输入java -version,这时显示java版本信息

MAC上搭建Jenkins + Android + IOS自动开发部署环境

安装Jenkins

Jenkins官网  https://jenkins.io

点击"Mac OS X"进行下载

MAC上搭建Jenkins + Android + IOS自动开发部署环境

下载好之后,双击pkg包进行安装

MAC上搭建Jenkins + Android + IOS自动开发部署环境

打开浏览器,输入http://localhost:8080就可以访问jenkins了。

MAC上搭建Jenkins + Android + IOS自动开发部署环境

重启Jenkins命令

$ sudo launchctl unload -w /Library/LaunchDaemons/org.jenkins-ci.plist
$ sudo launchctl load -w /Library/LaunchDaemons/org.jenkins-ci.plist

Jenkins插件安装

点击"Manage Jenkins" -> "Manage Plugins"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选中"Git Plugin"、"GitHub Plugin"、"Xcode integration"、"Gradle plugin"等插件,点击"Download now and install after restart"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

Jenkins会自动下载安装

MAC上搭建Jenkins + Android + IOS自动开发部署环境

Jenkins安全设置

点击"Manage Jenkins" -> "Configure Global Security"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选中"Enable security"

Security Realm:  "Jenkins own user database"

Authorization:  "Project-based Martix Authorization Strategy"

添加admin用户,赋予所有权限。 匿名用户,赋予只读权限。

点击"Save"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

用刚才添加的用户进行注册

MAC上搭建Jenkins + Android + IOS自动开发部署环境

安全失效的方法

修改Jenkins的config.xml,将useSecurity节点值改成false

$ sudo vim /Users/Shared/Jenkins/Home/config.xml

<useSecurity>false</useSecurity>

或者删除config.xml文件和users整个文件夹

$ sudo rm /Users/Shared/Jenkins/Home/config.xml
$ sudo rm -r /Users/Shared/Jenkins/Home/users

Android资源站点  http://www.androiddevtools.cn。上面不光有adt-bundle,还有最新的AndroidStudio。

安装Android Studio

MAC上搭建Jenkins + Android + IOS自动开发部署环境

下载好后,双击dmg文件,将"Android Studio"图标直接拖到"Applications"图标中安装

MAC上搭建Jenkins + Android + IOS自动开发部署环境

Android Studio第一次启动时,会初始化Android开发环境

新建Android SDK安装路径

$ mkdir -p /Users/Shared/Android/sdk

选择该路径,点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Next"后,开始自动下载安装Android SDK

MAC上搭建Jenkins + Android + IOS自动开发部署环境

使用第三方主题

系统提供的两种主题可能都不太好看,我们可以进入网站http://www.ideacolorthemes.org/home/来获取第三方主题,比如说Sublime主题就是我个人喜爱的。

点击下载,下载下来之后,是一个jar包(Monokai Sublime Text 3.jar)

MAC上搭建Jenkins + Android + IOS自动开发部署环境

导入主题包

打开Android Studio,点击右下角的"Configure" -> "Import Settings"

MAC上搭建Jenkins + Android + IOS自动开发部署环境  MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择之前下载好的主题包,点击"OK"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"OK"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"OK"来重启Android Studio,使配置生效

MAC上搭建Jenkins + Android + IOS自动开发部署环境

进行"Preferences"设置

显示行数

MAC上搭建Jenkins + Android + IOS自动开发部署环境

禁止自动打开上次的工程

MAC上搭建Jenkins + Android + IOS自动开发部署环境

修改注释位置

MAC上搭建Jenkins + Android + IOS自动开发部署环境

修改文件编码为UTF-8

MAC上搭建Jenkins + Android + IOS自动开发部署环境

设置Android SDK更新镜像服务器

打开Android SDK Manager的"Preferences..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

中国科学院开源协会镜像站地址

IPV4/IPV6: mirrors.opencas.cn 端口:80

设置镜像地址,选中"Force https://... sources to be fetched using http://...",点击"Close"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

添加gradle环境变量

Android Studio采用的新的构建系统gradle。自带的gradle目录为  /Applications/Android\ Studio.app/Contents/gradle/gradle-2.10

$ sudo vim ~/.bash_profile

# gradle
GRADLE_HOME=/Applications/Android\ Studio.app/Contents/gradle/gradle-2.10
export PATH=$PATH:$GRADLE_HOME/bin

使环境变量生效

$ source ~/.bash_profile

查看gradle版本信息

$ gradle -v

MAC上搭建Jenkins + Android + IOS自动开发部署环境

添加android sdk环境变量

$ sudo vim ~/.bash_profile

# android sdk
ANDROID_SDK_HOME=/Users/Shared/Android/sdk
export PATH=$PATH:$ANDROID_SDK_HOME/tools:$ANDROID_SDK_HOME/platform-tools

创建一个demo项目

点击"Start a new Android Studio project"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

输入项目信息,点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选中Phone and Tablet,根据需求选择需要支持的Android最低版本,点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择"Empty Activity",点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

输入activity信息,点击"Finish",创建完成。

MAC上搭建Jenkins + Android + IOS自动开发部署环境

安装Xcode

下载地址  https://developer.apple.com/xcode/download/cn

点击"Install App",安装XCode

MAC上搭建Jenkins + Android + IOS自动开发部署环境

安装好之后,打开XCode,点击"File" -> "New" -> "Project..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择"Single View Application",点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

填写项目相关信息,点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择存放项目的位置,点击"Create"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

右下角的对象库中选择Label控件,将其拖曳到View设计界面上,双击Label控件,在其中输入"Hello World"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

右击选择Add Files to "HelloWorld"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

将一张图片添加到工程

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择Image View,点击右边属性检查器,Image下拉列表中选择上一步添加的图片

MAC上搭建Jenkins + Android + IOS自动开发部署环境

运行模拟器,可以切换不同设备类型

MAC上搭建Jenkins + Android + IOS自动开发部署环境

IOS发布流程

首先要有一个苹果开发者账号,没有的话,登陆苹果开发者官网页面  https://developer.apple.com/programs

点击"Enroll" -> "Start Your Enrollment"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

MAC上搭建Jenkins + Android + IOS自动开发部署环境

输入苹果ID账号密码,点击"Sign In"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

然后按照提示步骤申请

  • 申请证书

首先在MAC上生成钥匙串的配置文件

点击"Launchpad" MAC上搭建Jenkins + Android + IOS自动开发部署环境,然后打开"Keychain Access"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Keychain Access" -> "Certificate Assistant" -> "Request a Certificate From a Certificate Authority..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

如果想通过邮件接收证书,则需要填写邮箱,两个邮箱填写一样就行,选择"Emailed to the CA",即可通过电子邮件收到钥匙串配置文件。

这里就用最简单粗暴的方式来获得钥匙串配置文件,直接通过"Saved to disk",上面的邮箱就可以随便填写了(是必填项,但不需要通过邮箱获得,所以随便填写就好)。

点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择一个存放位置,这里我就选择Downloads目录,点击"Save"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

登陆到苹果开发者官网,点击Certificates栏的"All",然后点击右上角的+号

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择证书类型

MAC上搭建Jenkins + Android + IOS自动开发部署环境

这里选择"App Store and Ad Hoc"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

上传钥匙串的配置文件,点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Download",下载生成好的证书

MAC上搭建Jenkins + Android + IOS自动开发部署环境

双击该证书,将其添加到"system" keychain

MAC上搭建Jenkins + Android + IOS自动开发部署环境

截止到目前为止,我们已经完成了对当前电脑授权,允许当前电脑进行真机开发(Tips:即钥匙串已经安装了授权证书,如果是用的其他电脑的钥匙串配置文件,则需要把下载下来的cer文件,给对应电脑,并在对应电脑上双击)。

  • 添加应用签名

点击Identifiers栏的"App IDs",然后点击右上角的+号

MAC上搭建Jenkins + Android + IOS自动开发部署环境

填写应用签名信息,点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

MAC上搭建Jenkins + Android + IOS自动开发部署环境

MAC上搭建Jenkins + Android + IOS自动开发部署环境

确认无误后,点击"Register"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

  • 加入设备

将苹果设备连接到iTunes,点击"摘要"显示设备信息,右击复制"UDID"的值

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击Devices栏的"All",然后点击右上角的+号

MAC上搭建Jenkins + Android + IOS自动开发部署环境

添加设备信息,点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

确认无误后,点击"Register"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

  • 生成Provisioning Profile

点击Provisioning Profile栏的"All",然后点击右上角的+号

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择配置文件类型,这里选择"App Store",点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择"App ID",点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择证书,点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

填写Profile Name,点击"Continue"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Download",下载provision profile到MAC上。

MAC上搭建Jenkins + Android + IOS自动开发部署环境

  • 设备Bundle ID和App ID一致

打开项目info.plist,修改Bundle identifier值与App ID匹配

MAC上搭建Jenkins + Android + IOS自动开发部署环境

  • 设置Xcode Code Sign Identifer,选择合适的Profile和证书进行签名,打包

点击"Xcode" -> "Preferences..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

在Accounts栏,选择你的Apple ID,点击"View Details..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选中需要的Provisioning Profile,点击"Download",之后会在~/Library/MobileDevice/Provisioning Profiles下多出一个XX.mobileprovision

MAC上搭建Jenkins + Android + IOS自动开发部署环境

设置Code Signing证书及Provisioning Profile

MAC上搭建Jenkins + Android + IOS自动开发部署环境

设备选择"Generic iOS Device",点击"Product" -> "Archive"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Export..."

MAC上搭建Jenkins + Android + IOS自动开发部署环境

根据需求选择导出类型,点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

选择合适的开发者账号,点击"Choose"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

点击"Next"

MAC上搭建Jenkins + Android + IOS自动开发部署环境

最后选择ipa导出位置。

iOS包管理工具CocoaPods的安装与使用

gem是管理Ruby库和程序的标准包,如果它的版本过低也可能导致安装失败,解决方案自然是升级gem

$ sudo gem update --system

因为Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的

$ gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/
$ gem sources -l

安装CocoaPods

$ sudo gem install cocoapods
$ pod setup

进入到工程的根目录下,创建Podfile文件,根据需要,我们可以在Podfile文件中写入需要用到的第三方库,以SBJson、AFNetworking、Reachability三个库为例,我的Podfile内容如下:

platform :ios
pod 'Reachability', '~> 3.0.0'
pod 'SBJson', '~> 4.0.0' platform :ios, '7.0'
pod 'AFNetworking', '~> 2.0'

然后执行

$ pod install
上一篇:laravel5.4生成验证码


下一篇:Python 的PIL,可以解决ImportError The _imagingft C module is not installed