介绍
Xamarin.Forms 代码在多个平台上运行,每个平台都有自己的文件系统。这意味着,使用每个平台上的本机文件 API,读取和写入文件是最容易完成的任务。或者,嵌入式资源也是使用应用分发数据文件的更简单的解决方案。
沙马林.要点
Xamarin.Essentials 插件为移动应用程序开发提供了 20 多个跨平台 API。Xamarin.基本 API 适用于所有 Xamarin.Forms、Xamarin.Android、Xamarin.iOS 或 UWP 应用程序,这些应用程序可以从共享代码访问。Xamarin.Essentials 克服了使用 Android、iOS 和 UWP 应用程序开发 Xamarin 的问题,因此开发人员可以使用 C# 访问每个本机平台 API。此插件提供了许多 API,所以最初,不需要更多的插件为 Xamarin.Xamarin.Essentials 插件会影响应用的最小大小。
平台支持
Xamarin.Essentials 支持以下平台和操作系统:
平台 |
版本 |
Android |
4.4 (API 19) 或更早版本 |
Ios |
10.0 或更高 |
UWP |
10.0.16299.0 或更早版本 |
先决条件
-
视觉工作室 2017 (Windows 或 Mac)
设置 Xamarin.窗体项目
首先创建一个新的 Xamarin.Forms 项目。通过自己完成这些步骤,您将学到更多。
在”新项目”对话框中选择”Xamarin.窗体应用项目”类型,在”跨平台/应用程序”下。
为应用命名,为共享代码选择”使用可移植类库”,并同时定位 Android 和 iOS。
您可能希望项目和解决方案使用与应用相同的名称。将其放入项目的首选文件夹中,然后单击”创建”。
现在你有一个基本的Xamarin.Forms应用程序。点击播放按钮来试用它。
设置用户界面
转到 MainPage.Xaml 并编写以下代码。
主页.xaml
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:XamarinEssentials"
x:Class="XamarinEssentials.MainPage">
<StackLayout>
<StackLayout HorizontalOptions="Center" VerticalOptions="Start">
<Image Margin="0,50,0,0" x:Name="imgBanner" Source="banner.png" ></Image>
<Image Margin="0,0,0,10" x:Name="imgXamarinEssential" Source="xamarinessential.png" ></Image>
<Label HorizontalOptions="Center" x:Name="lblDeviceName"></Label>
<Label HorizontalOptions="Center" x:Name="lblDeviceType"></Label>
<Label HorizontalOptions="Center" x:Name="lblPlatform"></Label>
<Label HorizontalOptions="Center" x:Name="lblModel"></Label>
<Label HorizontalOptions="Center" x:Name="lblManufacturer"></Label>
<Label HorizontalOptions="Center" x:Name="lblVersion"></Label>
</StackLayout>
</StackLayout>
</ContentPage>
添加 Xamarin 要点
在此步骤中,添加 Xamarin您可以通过NuGet安装 Xamarin.基本内容,也可以在GitHub上浏览源代码。
转到解决方案资源管理器并选择您的解决方案。右键单击并选择”管理解决方案的 NuGet 包”。搜索”Xamarin.基本组件”并添加包。请记住为每个项目(PCL、Android、iO 和 UWP)安装它。
Xamarin.基本要求特定于平台的设置
Android
Android 需要以下步骤:
-
Xamarin.Essentials 支持最低 Android 版本 4.4
-
用于编译的目标 Android 版本必须为 8.1,API 级别 27。
在 Android 项目的主要活动中,Xamarin.基本必须初始化在OnCreate方法中。
Xamarin.Essentials.Platform.Init(this, bundle);
Xamarin.基本必须收到任何申请许可结果。为运行时权限编写以下代码。
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
{
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
}
Ios
无需其他设置。
UWP
无需其他设置。
在此步骤中,编写以下代码以获取设备信息。
MainPage.xaml.cs
using Xamarin.Forms;
using Xamarin.Essentials;
namespace XamarinEssentials
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
lblDeviceName.Text ="Device Name :"+ DeviceInfo.Name;
lblDeviceType.Text ="DeviceType :"+ DeviceInfo.DeviceType.ToString();
lblModel.Text ="Model :"+ DeviceInfo.Model;
lblManufacturer.Text ="Manufacturer :" + DeviceInfo.Manufacturer;
lblPlatform.Text ="Platform : " + DeviceInfo.Platform;
lblVersion.Text = "Version :" + DeviceInfo.Version;
}
}
}
单击播放按钮试用。
我希望你了解如何在 Xamarin.Forms 中使用 Xamarin 基本产品获取设备信息。
谢谢你的阅读。请分享意见和反馈。