1. 什么是Xamarin

简介: 1. 什么是Xamarin

Xamarin是一个 .NET 开源的平台,主要用于通过 .NET 构建 IOS 、 Android 以及 Windows App 。利用 Xamarin 我们可以管理不同平台 APP 的共享代码与基础平台代码的通信,并且 Xamarin 上开发的 APP 是在托管环境中运行的,也就是说它会帮助我们来管理内存分配、垃圾回收等事情。Xamarin 可以让开发人员跨平台共享应用程序的代码,这样就可以使用一种编程语言开发所有平台的 App 。


Tip:编译、部署 IOS 应用程序必须在 MacOS 种进行。

零、原理

Xamarin 可以在每个平台上创建本机 UI ,并在 C# 里编写跨平台的共享业务逻辑。


1.添加功能

Xamarin 除了包含目标平台的功能,还新增了如下功能:

  • 基础 SDK 全绑定:Xamarin 包含了 IOS 、 Android 平台几乎整个基础平台 SDK 的绑定。这些绑定都是强类型,这说明可以很简单的导航和使用并提供可靠的编译时类型检查以及开发过程,此外还可以减少运行时错误以及提高程序质量。
  • 互操作性: Xamarin 可以直接调用 Object-C 、 Java 、 C 以及 C++ 所开发的库,并且可以使用声明性语法绑定本机的 Object-C 以及 Java 库。
  • 充分利用 C# 语言的优势: Xamarin 使用 C# 编写 App ,可以充分利用 C# 的并行编程、泛型以及功能性构造等。
  • 稳定的 BCL :Xamarin 开发的 App 使用的是 .NET BCL ,BCL 是大量基础类的集合,可以快速的开发 App 。
  • 优秀的 IDE :开发人员使用 Visual Studio 就可以开发 Xamarin 应用程序。
  • 跨移动平台支持: Xamarin 对 iOS、Android 和 Windows 这三个主要平台提供复杂的跨平台支持,并且可以在这三个平台共享百分之九十的代码。


2.Xamarin.Android

Xamarin.Android 将 C# 编译为 IL ,启动应用程序时实时编译为本机程序集。 Xamarin.Android 开发的应用程序是运行在 Mono 环境中的,Mono 环境与 Android 运行时虚拟机并行运行。 Xamarin 会向 Android.* 和 Java.* 命名空间提供 .NET 绑定。 Mono 执行环境通过托管可调用包装器引入 Android.* 和 Java.* 命名空间,并向 Android 运行时提供 Android 可调用包装器,这使的两种环境可以相互调用代码。


3.Xamarin.IOS

Xamarin.IOS 将 C# 编译为 ARM 程序集代码。 Xamarin 使用选择器向托管 C# 公开 Objective-C,并使用注册器向 Objective-C 公开托管 C# 代码。选择器和注册器共同称为“绑定”,使 Objective-C 和 C# 可以进行通信。


4.Xamarin.Essentials

Xamarin.Essentials 是为本机设备功能提供跨平台 API 的库。 它和 Xamarin 一样是一种简化本机功能访问过程的抽象。 Xamarin.Essentials 提供的功能包括:

  • 设备信息
  • 文件系统
  • 加速计
  • 电话拨号程序
  • 文本到语音转换
  • 屏幕锁定


5.Xamarin.Forms

Xamarin.Forms 是一个开源 UI 框架。它可以让开发人员从共享代码生成 iOS、Android 和 Windows 应用程序。 Xamarin.Forms 使用 XAML 来创建 UI 界面。这些 UI 会在不同平台上呈现为本机控件。 Xamarin.Forms 提供的功能包括:

  • XAML 用户界面语言
  • 数据绑定
  • 笔势
  • 效果
  • 样式

一、总结

这篇主要简单的介绍了一下 Xamarin 相关的知识,属于入门级别的内容。从下节开始我将的通过贯穿整个专栏的例子来讲解 Xamarin.Forms 。这里要提醒各位读者的是,这个专栏讲解的是 Xamarin.Forms 的知识,它是整个 Xamarin 的基础。后续专栏我将讲解 IOS 、Android 、 Essentials 以及 XAML 相关的内容 。



目录
相关文章
|
存储 Android开发
2.Hello Xamarin
2.Hello Xamarin
106 0
2.Hello Xamarin
|
Android开发
xamarin android网络请求总结
xamarin android中网络请求的框架非常多,在项目中使用的是第三方的一个网络请求框架restsharp,应该是github上.net网络请求最多star的框架,没有之一。这里就简单汇总了其他的一些网络请求的例子,主要还是分为android和.net两种平台。
1923 0
|
安全 iOS开发
用Xamarin.Forms让iOS 11变得更容易
iOS 11引入了一些您可能想要利用的新的视觉设计更新,包括安全区域布局指南和大型标题。 对于Xamarin.iOS开发人员,我们最近发布了一个iOS 11指南,用于更新您的Xamarin.iOS应用程序和安全区域和大型文章的文章。
1364 0
|
Windows
【Xamarin】安装
本节提供了可在Visual Studio上使用Xamarin进行设置的安装和设置实践的概述。 在Windows上的Visual Studio中安装Xamarin 本文介绍如何在Windows计算机上安装XAMarin for Visual Studio。
924 0
|
Go C# Android开发
Xamarin.Forms简介
跨平台用户界面入门 Xamarin.Forms是一个跨平台的本机支持的UI工具包抽象,允许开发人员轻松创建可以在Android,iOS,Windows和Windows Phone上共享的用户界面。
1228 0
你好,Xamarin.Forms
介绍与Xamarin.Forms跨平台开发 本指南介绍了使用Visual Studio for Mac或Visual Studio开发Xamarin.Forms应用程序以及使用Xamarin.Forms开发应用程序的基础知识。
978 0
|
API Android开发 iOS开发
Xamarin.Forms要求
Xamarin.Forms的平台和开发系统要求。 有关跨平台应用的安装和设置实践的概述,请参阅安装文章。 目标平台 Xamarin.
922 0
|
测试技术 Android开发 iOS开发
深入Xamarin.Forms
在Xamarin.Forms快速入门中,构建了Phoneword应用程序。 本文回顾了为了了解XAMarin.Forms应用程序的基础知识而建立的内容。 以下主题被提及: Visual Studio简介 - Visual Studio简介,并创建一个新的Xamarin.Forms应用程序。
1181 0