前几篇分别介绍了 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. 过度拟合(overfilting)

    过拟合概念:是指分类器能够百分之百的正确分类样本数据(训练集中的样本数据),对训练集以外的数据却不能够正确分类. 原因:1:模型(算法)太过复杂,比如神经网络,算法太过精细复杂,规则太过严格,以至于任 ...

  2. servlet生成验证码

    1.因为朋友们都说现在很少用java自带的图形用户接口,所以小白的我就没去看awt和swing组件,因为要抓紧时间学习后面的,完了出去找工作,等以后再回来了解awt和swing:所以制作验证码的代码是 ...

  3. Ubuntu 16.04源码编译安装nginx 1.10.0

    一.下载相关的依赖库 pcre 下载地址 http://120.52.73.43/jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.t ...

  4. Flash与 Javascript 交互

    网页加载时立即调用 ExternalInterface.addCallback中定义的函数会失败,放到按键中调用正常. 推测:可能是flash对象加载时间略长,网页加载到js时,flash对象尚未初始 ...

  5. M-自适应宽高样式

    1 绝对定位 position: absolute; top: 0px; bottom: 0px; left: 0px; width: 100%; overflow: hidden;

  6. ch1-使用路由-静态资源-404页面-ejs模板

    1 package.json 项目文件夹根目录创建这个文件 //要依赖的模块 "dependencies": { //dependency 依赖的复数形式 "expres ...

  7. python之字典

    1.用{}创建字典 代码: 1 2 x = {"a":"1", "b":"2"} print x 输出: {'a': ' ...

  8. HDU1285 确定比赛名次

    有N个比赛队(<=N<=),编号依次为1,,,....,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩,只知道每场比赛的结 ...

  9. Feature Scaling深入理解

    Feature Scaling 可以翻译为特征归一化,或者数据归一化,比如统计学习中,我们一般都会对不同量纲的特征做归一化,深度学习中经常会谈到增加的BN层,LRN层会带来训练收敛速度的提升,等等.问 ...

  10. javascript字符串对象

    String字符串对象 1. 字符串粗体展示: var a = "陈冠希喜欢拍电影";   document.writeln(a.bold()+"<br/>& ...