目录html
1 集成TFS系统.... java
1.1 概述.... android
1.2 安装TFS插件.... git
1.2.1 在线安装方式.... github
1.2.2 离线安装方案.... android-studio
1.3 常见操做....服务器
1.3.1 新建Git库....网络
1.3.2 在Android Studio上克隆代码库... oracle
1.3.3 链接VSTS. app
1.4 导入代码(TFS)....
1.4.1 导入到TFS.
1.4.2 导入到VSTS.
1.5 提交修改....
1.6 同步(推送)....
1.7 克隆代码库到本地...
2 持续集成....
2.1 安装代理服务器....
2.2 配置和运行生成定义....
3 常见问题....
3.1 运行出现“Please select android SDK”
3.2 没法经过用户认证....
3.3 没法下载中文团队项目集合中的Git库..
3.4 打开代码库的速度特别慢...
3.5 Before building your project, you need to accept the license agreements and complete the installation of the missing components using the Android Studio SDK Manager
Android Studio是安卓应用程序开发的官方集成开发工具(IDE),它是基于IntelliJ IDEA的一个开发软件。咱们能够从安卓的官方网站找到更多关于它的资料:http://developer.android.com/tools/studio/index.html 。
TFS是微软的DevOps解决方案,实现了包括需求管理、编码开发、测试、持续集成和发布等全流程的研发管理,并支持主流开发工具和开发语言的技术支持。为了在Android Studio中实现软件研发管理,微软发了基于Android Studio的TFS插件https://github.com/Microsoft/vso-intellij/ 。这个插件容许您以无缝和直观的方式链接到Visual Studio团队服务(Git)和Team Foundation Server(TFS)上的Git存储库。你也可使用这个插件来导入您的Android开发项目为VSTS或建立拉要求在VSTS / TFS Git仓库。你也可使用这个插件建立和管理TFS服务器中的拉取请求。
下面咱们来介绍在Android Studio中如何使用这个插件。
能够经过浏览插件库,从Android Studio中在线安装VSTS插件。
1 在Android Studio中, 打开插件的设置窗口:
l Linux: from the File menu, select Settings... then Plugins
l Mac: from the Android Studio menu, select Preferences... then Plugins
l Windows: from the File menu, select Settings... then Plugins
2.点击Browse repositories... 按钮,并在搜索框中搜索"Visual Studio Team Services".
3.点击Install plugin 按钮,并从新启动Android Studio.
操做方式以下:
Figure 55 – 打开设置窗口
Figure 56 – 安装VSTS插件
- 从Android Studio插件库(http://plugins.jetbrains.com/plugin/7981?pr=androidstudio)下载插件
- 从本地安装:File > Settings > Plugins > Install plugin from disk…
Figure 57 – 从本地磁盘中安装VSTS插件
使用Android Studio链接TFS服务器,首先须要在TFS服务器上新建代码库,上传一套已经存在的代码。(你也能够参考后面的操做导入一套代码,并新建一个Git代码库。)
Figure 58 – 在TFS服务器上新建代码库
Figure 59
Figure 60 – 从TFS服务器上下载/克隆代码到本地计算机
Figure 61 – 输入TFS服务器地址,并按要求输入帐户、密码
Figure 62
(点击Clone之后,代码没有克隆到本地目录,也没有提示错误)
若是出现上面的错误,是因为目前的版本存在一个Bug,不能解决非Unicode编码的URL,我已经和微软产品组沟通确认,并有产品组建立了一个问题https://github.com/Microsoft/vso-intellij/issues/132 ,用于跟踪问题解决的进展。
目前解决的方案是尽可能确保Git地址栏中没有中文字符,或者使用命令行方式克隆代码。
链接VSTS的方式与TFS基本一致,须要咱们已经注册了VSTS的帐户。例如我使用本身的帐户zhanghongjun@msn.com登陆VSTS之后,插件会自动罗列个人Git代码库。
Figure 63
Figure 64 – 选择一个代码库,克隆代码到本地计算机
Figure 65
在Android Studio中打开一个本地项目
Figure 66
Figure 67
Figure 68
Figure 69
Figure 70 - 后面的方法和TFS基本一致
Figure 76
Figure 77
Figure 78
Figure 80
Figure 81
配置Android编译代理服务器,至少须要下面的环境:
1) Windows Server 2016(或其余支持TFS 2018的代理服务器的操做系统,例如Win 2012)
2) Java环境开发包(JDK)
3) 安卓开发包(ADK)
4) TFS代理服务器
下面是配置代理服务器的方法和步骤
1) 安装JAVA SDK
安装JDK的方法和其余开发工具的方法同样,从官方网站下载Windows 64位的压缩包:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
- 下载之后解压到代理服务器的相关目录中,例如:C:\java\jdk1.8.0_91
- 并配置环境变量 JAVA_HOME,值为:C:\java\jdk1.8.0_91
- 将路径% JAVA_HOME %\bin添加到环境变量PATH的值中
Figure 84 – 环境变量:JAVA_HOME、ANDROID_HOME
2) 安装Android SDK
- 从官方网站https://developer.android.com/studio/index.html 下载最新版本的Android SDK,并解压到代理服务器的相应目录中。
你也能够下载完整版本的Android Studio,其中包含了SDK。我在部署的过程当中,因为须要在代理服务器上调试安卓代码,就采起了安装Android Studio的方式安装SDK。
- 配置环境变量ANDROID_HOME
例如路径:C:\Users\tfsadmin\AppData\Local\Android\Sdk
- 将下列路径添加到环境变量Path的值中:
n %ANDROID_HOME%\tools
n %ANDROID_HOME%\platform-tools
3) 安装TFS代理程序
- 从微软官方下载最新版本的代理程序
https://github.com/Microsoft/vso-agent
并将代理程序解压缩到代理服务器的任一目录中
- 在命令行窗口中配置代理程序
Configure.bat
4) 验证代理程序
代理程序安装成功后,咱们能够在TFS服务器的管理界面中查询到代理服务器,也能够查询到代理服务器上Android SDK版本,以下图:
Figure 85 – TFS管理界面中的代理
在配置生产定义以前,首先须要简单理解一下Gradle(https://gradle.org/)这个编译工具。
Gradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,支持maven, Ivy仓库,支持传递性依赖管理,而不须要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写。在功能上,Gradle与常见的ant、maven、msbuild等比较类似,为用户提供很是强大的编译功能。
Android Studio原生配置了Gradle编译工具,建立项目时,开发工具会自动建立Gradle须要的配置文件和编译脚本;在开发过程当中,也会根据软件功能的变化自动修改Gradle编译脚本。
TFS 2018中自带了Gradle的编译模板,能够为Android软件快速建立编译工做流程。下面咱们来介绍如何在TFS 2018中创为Android代码建立Gradle生成定义:
Figure 87 – 新建生成定义
Figure 88 – 选择系统提供的Gradle生产模板
Figure 89 – 选择生产代理所在的代理队列
Figure 90 – 因为我须要输出的文件是app安装文件APK,将默认的jar修改成apk,生成流程会自动将输出的文件发布到生产结果中
在个人测试中,生产过程当中没有其余任务须要执行,就能够保留目前的默认设置,点击“保存并排队”,TFS就会启动刚才定义的生成流程,以下图:
Figure 91 – 保存并排队
第一次启动生成流程,因为编译过程当中须要根据项目的配置要求获取所需的Gradle版本,咱们必须确保代理服务器处于联网状态。例如个人实验代码须要Gradle 4.1版本(以下图)。
Figure 92
若是代理服务器不能联网,须要咱们手工下载对应的Gradle版本,并将其复制到代理服务帐户所在的.Gradle目录中,例如我使用tfsservice启动代理服务,则须要将gradle-4-1-all.zip文件下载并复制到这个目录中(C:\Users\tfsservice\.gradle\wrapper\dists\gradle-4.1-all)。注意,不须要解压缩文件。
当所需的Gradle版本下载完成之后,TFS会自动运行生成脚本,并完成后续的编译任务,例如个人生产定义中的复制、发布等任务,以下图:
Figure 93 – 生产过程当中的实时记录
生成成功后,咱们就能够在生产结果中,点击“项目”,查看到生成输出的APK文件,以下图:
Figure 94 – 生成的输出文件
因为从新从服务器上克隆的代码库,修改了本地代码库的路径,出现上面的错误。
解决方法参考下面的链接:
https://stackoverflow.com/questions/34353220/android-studio-please-select-android-sdk
Tools -> Android -> Sync Project with Gradle Files (Android Studio 3.0.1)
安装IIS的基本认证功能,并在IIS中为team foundation server/tfs启用基本认证功能。
当Git服务器的URL中包含非Unicode的编码字符时,将TFS插件致使TFS插件克隆或者导入失败。已经向微软产品组反馈,并确认为缺陷,在开发网站中建立了用于跟踪问题的Bug https://github.com/Microsoft/vso-intellij/issues/132 。
TFS服务器运行在虚拟机中,从物理机访问代码库特别慢。
解决办法:断开物理机链接其余网络的网卡。
须要在命令行模式下接受受权
微软ALM MVP 张洪君 http://www.cnblogs.com/danzhang
--End--
-