2. Xamarin开发工具
为Android和iOS创建应用程序时,需要了解支持所需工具的平台版本。
1. Android
在Windows上开发时,我们学习了如何指定开发应用程序的最低版本和目标版本。这与Android非常相似。对于Android,用户有Android的一个版本以及与编号的API级别相对应的代码名称。
用户需要决定想支持平台的哪个版本。支持的原因可能是市场上的分销。下表列出了Android的最新版本(截止到作者编写本书时)及其代码名、API级别,以及Android手机访问Google Playground的百分比。在2018年1月,Lollipop(5.0)、API 21级是谷歌支持的最早版本,但KitKat 4.4仍占有12.8%的市场份额。Marshmallow的市场份额最大,达到28.6%。可以使用这些信息来决定需要支持的Android版本。Oreo与2017年8月发布,但其市场份额仍然落后,许多新出售的设备没有安装最新的Android版本,并不是所有手机都可以更新到最新版本。有关实际发行版,请参阅https://developer.android.com/about/dashboards/index.html。
注意:
Android代码名称按其发布时间,按字母顺序排列。Cupcake(1.5)之后是Donut(1.6)、Eclair(2.0)、Froyo(2.2)、GingerBread(2.3)、Honeycomb(3.0)、Ice Cream Sandwich(4.0)、Jelly Bean(4.1)、KitKat(4.4)、Lollipop(5.0)、Marshmallow(6.0)、Nougat(7.0)和Oreo(8.0)。
为Android开发时,需要为支持的版本安装Android SDK以及模拟器。微软创建了自己的Android和SDK工具扩展,以便于安装Android平台和工具(见下图)。对于Visual Studio for Windows,可以从Visual Studio Tools | Android | Android SDK Manager 上访问它。
还可以使用通过Android Emulator Manager配置的模拟器。如果可以使用真实设备,它就是有益的,它们通常比模拟器更快。应该在多个设备上测试。来自同一硬件供应商的不同设备可能会有不同的表现。我们可能会从不同的供应商那里购买使用不同平台版本的数百台设备,因此有一个选择。借助Visual Studio App Center,可以使用Test Cloud在数千个物理设备上测试应用程序。只需要创建一个UI测试,并在30天的免费期后支付每月费用,这可能比购买所有类型的手机便宜。
要使用Android设备,需要启用它以进行调试。然后将其连接到电脑的USB端口。尽管可以通过在Update 设置中选择Developer Mode,为开发人员启用Windows设备,但使用Android需要打开Settings页面,并单击构件号七次。
2. iOS
为了开发iOS应用程序,需要一台Mac来构建XCode,如果使用的是Visual Studio 2016版本15.6,则配对变得非常简单。从Visual Studio Tools | Pair to Mac,可以与Mac配对,并远程安装所需的SDK。在此过程中,还可以获得注册Apple门户的信息,并配置物理设备,以便于用于调试。为iOS创建应用程序时,还需要决定支持哪个iOS版本。iOS的版本有编号,且没有太多需要支持的设备类型。要查看iPhone和iPad设备支持哪些iOS版本,请访问http://iossupportmatrix.com/。
与Android用户相比,iOS用户在更新iOS版本时评率更快。在https://developer.apple.com/support/app-store/中可以查看使用App Store的设备数量。截至2017年12月,使用iOS 11的用户占59%,使用iOS 10的用户占33%,使用早期版本的用户仅占8%。
3. Visual Studio 2017+
除了编译XCode(受Apple许可限制)之外,Visual Studio 2017+ 还具备为Android、iOS和Windows创建Xamarin应用程序所需的全部功能。如果安装了Mobile Developer with .NET工作负载,就将获得Android应用程序、iOS应用程序和跨平台应用程序的项目模板。Visual Studio提供了Android SDK的安装,可以使用Android和iPhone模拟器,并且可以为Android XML(AXML)文件和iOS故事版提供设计人员。
4. Visual Studio for Mac
Visual Studio for Mac起源于Mac上用来创建Xamarin应用程序的Xamarin Studio。现在Visual Studio for Mac不仅名称改变了,还有更多功能。Visual Stuido的编辑器现在已经集成,还可以创建ASP.NET Core Web应用程序。
Visual Studio for Mac包含用于创建iOS和Android应用程序的项目模板。无法使用Visual Studio for Mac创建WIndows应用程序。在这里,Visual Studio需要Windows 10系统。
Visual Studio for Mac与Visual Studio一样管理Android SDK版本,并为设计人员提供AXML文件以及iOS故事版。
5. Visual Studio App Center
Visual Studio App Center(https://appcenter.ms)已经在Test Cloud for Android设备中提及。Test Cloud还支持iPhone和iPad设备。使用UI测试,可以自动在数千个设备上测试应用程序。
测试不是Visual Studio App Center的唯一功能。可以创建自动构建程序,并运行单元测试,因为源代码已签入到Visual Studio Team Services、Github或其他几个代码存储库中。
可以使用Visual Studio App Center作为分发工具,将应用分发给beta测试人员,并获得有关应用问题的信息。
最后,可以通过应用分析获取生产中的应用的良好报告,了解用户在做什么,发现应用崩溃的位置,自动将问题记录到源代码库中。