移动应用开发主要在两个产品之间共享:苹果的iOS和谷歌的Android。iOS的本机开发是使用编程语言Objective-C或Swift、Cocoa和Cocoa Touch框架完成的。Cocoa是苹果API的名称。在为Android开发时,可以使用谷歌的Android SDK,而Java是主要编程语言。
可以使用C#和XAML,而不是使用不同的编程语言重写代码。Xamarin提供跨平台开发,但仍然可以使用本机API。
由于Xamarin被微软收购,并且Visual Studio中的Xamarin工具集成越来越好,因此许多使用跨平台技术的应用程序可以提高生产率。
本章介绍如何开始创建Xamarin应用程序。使用从其他章节学到的有关C#、.NET Core和XAML的基础,在阅读本章后,就可以使用Xamarin开发开始应用程序了。其他专门讨论Xamarin的书中还有很多这方面的内容,这是一个好的开始。
注意:
要创建和编译本章中的示例,需要在Windows 系统上安装Mobile Development with .NET 工作负载。另一个选项是,可以使用Visual Studio for Mac。拥有Android手机有助于运行Android应用程序。要创建和编译iOS示例,需要使用Mac进行编译,而iPhone也很有用。
1. 用Android架构Xamarin
为Android手机创建Xamarin应用程序时,知道幕后发生了什么是很不错的。下图给出了一个架构概括。Android在Linux内核上运行。在Google中可以看到,Android SDK在Android运行库(ART)之上运行。该图的左侧显示了.NET部分——使用.NET Mono运行库的.NET API。Mono运行库和ART在应用程序进程中并行运行。Mono Calla