前几篇分别介绍了 Xamarin.Forms 的 MVVM 的 Prism,UITest,Nuint Test,那这样算下来,代码部分基本结构都有了(逻辑就先忽略吧)

那接下来就应该是自动 Build,Test,部署之类的,总之该是朝着 DevOps 的方向前进了,虽然我不能完全搞定

如果所有环境都自己搭建的话,还是很费事的,嗯,关键是我好多细节不会配置,比如写各种 yml 配置,所以我就偷偷懒,直接用 Visual Studio Mobile Center 好了

一、Mobile Center 是什么

看官网介绍,基本就是 DevOps 都可以搞定了,还不用自己搭建环境,关键还支持这么多平台,干嘛不用

二、环境和版本

  • Win 10 17017 preview
  • VS 2017 15.4.2
  • Xamarin.Forms 2.3.4.270
  • UITest 2.1.2

三、准备工作

二、配置

  • 项目部分

如图这里的 1,2,3 项目都需要添加相关的 Nuget 包,搜索 Mobile Center 即可

添加后,再修改下Portable 项目的 App.xaml.cs 文件的构造函数添加相关代码

        public App(IPlatformInitializer initializer = null)
: base(initializer)
{
MobileCenter.Start("android=5c81276c-2895-4204-a743-080b1e18ff04;"
+ "ios=d9bb5279-f4b5-4d57-9888-8d6a16dfa690",
//+ "uwp={Your UWP App secret here};"
typeof(Analytics), typeof(Crashes));
}

这里的红色字符是 Mobile Center 创建项目后生成的那个(后边会看到的),Get started 里都给出的,请正确粘贴哦,非最后一个注意后边的分号

  • Mobile Center 部分

注册并登录后就是下边这个样子,

然后你可以创建一个组织,也可以直接添加 App ,这里我建了一个 XamarinTest 的组织,并添加了一个 Android 和 IOS 项目

每个项目又有一些设置,具体的可以根据你的需要设置,默认是告诉你怎么开始使用,除了之前添加的 Nuget ,还有和左边菜单项对应的功能,都可以添加相应的 Nuget 来使用

这里选择 Xamarin.Forms 并记住这里提供的 ID 字符串,稍后代码里需要用,当然如果没记也没关系,再去 Setting 里复制一下也可以

这里就是所有的步骤截图了,相应功能的具体说明链接如下

选择一个 App 后会先让你选择代码库,默认是 VSTS 的,我这里选的是 GitHub ,然后选择项目,这样以后提交代码就会自动 Build 和 Test 了

之后就是设置这个 App 的一些参数,根据需要修改就可以了,这是 Build 的一些配置

还有 Test 的配置,这里基本和 Xamarin Test Cloud 差不多了,选择设备什么的

配置 Test 的分支和类别

最后是提交,Build 之后应该是会自动提交的,这里也介绍了手动提交

这是完整的截图,是不是觉的就是 Test Cloud 那一套,所以官方的宣传 Visual Studio Mobile Ceter 是下一代的 Hockey App + Xamarin Test Cloud 一点都没错,会让你很自然的过度过来

这里的命令规则复制下来改成自己的就可以了

自动 Test 就不用管了,这里说下手动上传跑 Test 吧,估计是给不提交代码但是想验证用的吧

1.cmd 打开命令行窗口

2.转到代码所在目录盘符,这里是 E 盘——E:

3.转到代码目录—— cd E:\Code\SD.Xamarin

4.登录 Mobile Center ——mobile-center login

这时会打开浏览器,弹出一个网页,给你一个 Token

此时的命令行会要求你填入这个 Token,然后提示你登录成功

之后就和 Test Cloud 一样了,填入命令就可以了

跑完后就可以去 Mobile Center 看结果了,这里的第二个是我手动上传的,至于时间间隔这么大,就是因为之前命令写错参数了,然后开了个会

具体的信息可以点进去查看

OK ,到这里就完成了 Test 部分,至于其他的 Crashes 和 Analytics 可以添加其他的 Nuget 尝试一下

因为之前的文章都被移除了首页,因为图片太多,这篇应该是最多的了吧,但是没图片会缺少过程,如果你能看到这篇,请手动找一下以前的文章吧,我也无能为力

走进 Visual Studio Mobile Center for Xamarin.Forms的更多相关文章

  1. [WPF] 使用 Visual Studio App Center 持续监视应用使用情况和问题

    1. 什么是AppCenter Visual Studio App Center 是几个常见移动开发和云集成服务(如持续集成.持续交付和自动 UI 测试等服务)的集合. 这些 App Center 服 ...

  2. Visual Studio App Center 中的 Bug 跟踪服务

    我在之前的一篇文章 <使用 Visual Studio App Center 持续监视应用使用情况和问题> 中介绍了 App Center 的基本功能及使用入门,其中 诊断 可以自动手机用 ...

  3. Xamarin+Prism开发详解三:Visual studio 2017 RC初体验

    Visual studio 2017 RC出来一段时间了,最近有时间就想安装试试,随带分享一下安装使用体验. 1,卸载visual studio 2015 虽然可以同时安装visual studio ...

  4. Visual Studio 2017正式版发布全纪录

    又是一年发布季,微软借着Visual Studio品牌20周年之际,于美国太平洋时间2017年3月7日9点召开发布会议,宣布正式发布新一代开发利器Visual Studio 2017.同时发布的还有 ...

  5. Build 2017 Revisited: .NET, XAML, Visual Studio

    For the next couple months we're going to revisit Build 2017, each post focusing on different aspect ...

  6. Visual Studio 2017RC 版本相关资料

    Visual Studio 2017 RC版本说明 1.社区版 Visual Studio Community 2017 RC Visual Studio Community 2017 RC 是针对个 ...

  7. Visual Studio 2017 针对移动开发的新特性介绍

    欢迎大家持续关注葡萄城控件技术团队博客,更多更好的原创文章尽在这里~~ Visual Studio是世界上最好的IDE之一,如果是 .NET世界,那就没有之一了(^_^),而最近推出的Visual S ...

  8. Xamarin.Forms教程开发Xamarin.Forms应用程序需要的工具

    开发Xamarin.Forms应用程序需要的工具 Xamarin.Forms教程开发Xamarin.Forms应用程序需要的工具,2014年5月8日在发布的Xamrin 3中引进了Xamarin.Fo ...

  9. GetBuiltProjectOutputRecursive error running Xamarin Forms iOS on Visual Studio

    Seems like I get this weird problem while running Xamarin.iOS on Visual studio. This happened after ...

随机推荐

  1. RobotFramework自动化测试框架-移动手机自动化测试Clear Text关键字的使用

    Clear Text关键字用来清除输入框的数据,该关键字接收一个参数[ locator ],这里的locator指的就是界面元素的定位方式. 示例1:Clear Text清除输入框数据时,采用reso ...

  2. struts1.3整合spring2.5(将spring委托给struts方式)

    前提是配置完struts1.3 导包 spring-2.5.6.jar //spring核心包 spring-webmvc-struts-2.5.5.jar //struts整合spring使用 lo ...

  3. 一张图告诉你移动Web前端所有技术(工程化、预编译、自动化)

    你要的移动web前端都在这里! 大前端方向:移动Web前端.Native客户端.Node.js. 大前端框架:React.Vue.js.Koa 跨终端技术:HTML5.CSS 3.JavaScript ...

  4. 最小覆盖_KEY

    最小覆盖(cover)..线段树 [题目描述] 给定 N 个区间[Li,Ri],需要你按照顺序选出一个区间序列使得[1,M]完全被覆盖.并且在选出来的序列中,某个区间[a,b]之前必须保证[1,a]都 ...

  5. 复选框demo

    本篇文章是关于复选框的,有2种形式:1.全选.反选由2个按钮实现:2.全选.反选由一个按钮实现. <!DOCTYPE html> <html> <head> < ...

  6. 在JavaScript中使用json.js:Ajax项目之GET请求(同步)

    1.用php编写一个提供数据的响应程序(phpdata.php) <?php $arr=array(1,2,3,4); //将数组编码为JSON格式的数据 $jsonarr=json_encod ...

  7. HashMap的源码分析(一)

    1.hashMap的关键值 DEFAULT_INITIAL_CAPACITY:默认初始容量16,∈(0,1<<30),实际大小为2的整数次幂: DEFAULT_LOAD_FACTOR:默认 ...

  8. Mybatis Dynamic Query 2.0.2

    项目地址:https://github.com/wz2cool/mybatis-dynamic-query 文档地址:https://wz2cool.gitbooks.io/mybatis-dynam ...

  9. B树、B+树、B*树

    二叉搜索树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right): 2.所有结点存储一个关键字: 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树: 如 ...

  10. IOC模式理解

    理解IOC inversion of control  控制反转  与  DI   Dependency Injection  依赖注入概念之前,我们需要知道在一个系统的设计过程中,降低各模块之间的相 ...