MAC上搭建Jenkins + Android + IOS自动开发部署环境
因为MAC是大小写不敏感的操作系统,很多Linux命令不支持,所以首先要创建大小写敏感的操作系统。
设置静态IP
打开"System Preferences..."

点击"Network"

设置静态IP

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

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

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

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

安装JDK
查看系统是否安装好JDK
$ java -version
我的MAC上还没有装java运行环境

打开JAVA下载地址 http://www.oracle.com/technetwork/java/javase/downloads/index.html
点击
,下载"Mac OS X"版本的JDK

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

安装Jenkins
Jenkins官网 https://jenkins.io
点击"Mac OS X"进行下载

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

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

重启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"

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

Jenkins会自动下载安装

Jenkins安全设置
点击"Manage Jenkins" -> "Configure Global Security"

选中"Enable security"
Security Realm: "Jenkins own user database"
Authorization: "Project-based Martix Authorization Strategy"
添加admin用户,赋予所有权限。 匿名用户,赋予只读权限。
点击"Save"

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

安全失效的方法
修改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

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

Android Studio第一次启动时,会初始化Android开发环境
新建Android SDK安装路径
$ mkdir -p /Users/Shared/Android/sdk
选择该路径,点击"Next"

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

使用第三方主题
系统提供的两种主题可能都不太好看,我们可以进入网站http://www.ideacolorthemes.org/home/来获取第三方主题,比如说Sublime主题就是我个人喜爱的。
点击下载,下载下来之后,是一个jar包(Monokai Sublime Text 3.jar)

导入主题包
打开Android Studio,点击右下角的"Configure" -> "Import Settings"

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

点击"OK"

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

进行"Preferences"设置
显示行数

禁止自动打开上次的工程

修改注释位置

修改文件编码为UTF-8

设置Android SDK更新镜像服务器
打开Android SDK Manager的"Preferences..."

中国科学院开源协会镜像站地址
IPV4/IPV6: mirrors.opencas.cn 端口:80
设置镜像地址,选中"Force https://... sources to be fetched using http://...",点击"Close"

添加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

添加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"

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

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

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

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

安装Xcode
下载地址 https://developer.apple.com/xcode/download/cn
点击"Install App",安装XCode

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

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

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

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

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

右击选择Add Files to "HelloWorld"

将一张图片添加到工程

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

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

IOS发布流程
首先要有一个苹果开发者账号,没有的话,登陆苹果开发者官网页面 https://developer.apple.com/programs
点击"Enroll" -> "Start Your Enrollment"
![]()

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

然后按照提示步骤申请
- 申请证书
首先在MAC上生成钥匙串的配置文件
点击"Launchpad"
,然后打开"Keychain Access"

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

如果想通过邮件接收证书,则需要填写邮箱,两个邮箱填写一样就行,选择"Emailed to the CA",即可通过电子邮件收到钥匙串配置文件。
这里就用最简单粗暴的方式来获得钥匙串配置文件,直接通过"Saved to disk",上面的邮箱就可以随便填写了(是必填项,但不需要通过邮箱获得,所以随便填写就好)。
点击"Continue"

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

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

选择证书类型

这里选择"App Store and Ad Hoc"

点击"Continue"

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

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

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

截止到目前为止,我们已经完成了对当前电脑授权,允许当前电脑进行真机开发(Tips:即钥匙串已经安装了授权证书,如果是用的其他电脑的钥匙串配置文件,则需要把下载下来的cer文件,给对应电脑,并在对应电脑上双击)。
- 添加应用签名
点击Identifiers栏的"App IDs",然后点击右上角的+号

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


![]()
确认无误后,点击"Register"

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

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

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

确认无误后,点击"Register"
![]()
- 生成Provisioning Profile
点击Provisioning Profile栏的"All",然后点击右上角的+号

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

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

选择证书,点击"Continue"

填写Profile Name,点击"Continue"

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

- 设备Bundle ID和App ID一致
打开项目info.plist,修改Bundle identifier值与App ID匹配

- 设置Xcode Code Sign Identifer,选择合适的Profile和证书进行签名,打包
点击"Xcode" -> "Preferences..."

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

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

设置Code Signing证书及Provisioning Profile

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

点击"Export..."

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

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

点击"Next"

最后选择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

浙公网安备 33010602011771号