应用信息

Browse sample. 浏览示例

本文介绍如何使用 .NET Multi-platform App UI (.NET MAUI) IAppInfo 接口,该接口提供有关应用的信息。

IAppInfo 接口的默认实现通过 AppInfo.Current 属性提供。 IAppInfo 接口和 AppInfo 类都包含在 Microsoft.Maui.ApplicationModel 命名空间中。

读取应用信息

IAppInfo 接口公开以下属性:

下面的代码示例展示如何访问其中一些属性:

string name = AppInfo.Current.Name;
string package = AppInfo.Current.PackageName;
string version = AppInfo.Current.VersionString;
string build = AppInfo.Current.BuildString;

获取当前主题

RequestedTheme 属性提供系统当前为应用请求的主题。 返回以下值之一:

如果操作系统没有特定的用户界面样式,则返回 Unspecified。 例如,设备在版本低于 13.0 的 iOS 上运行。

以下代码示例展示如何获取主题:

ThemeInfoLabel.Text = AppInfo.Current.RequestedTheme switch
{
    AppTheme.Dark => "Dark theme",
    AppTheme.Light => "Light theme",
    _ => "Unknown"
};

获取布局方向

RequestedLayoutDirection 属性提供系统用于应用的当前布局方向。 返回以下值之一:

当布局方向未知时,将返回 Unknown

以下代码示例展示如何获取布局方向:

LayoutDirection layoutDirection = AppInfo.Current.RequestedLayoutDirection;

显示应用设置

IAppInfo 类还可以显示操作系统为应用维护的设置页面:

AppInfo.Current.ShowSettingsUI();

此设置页面使用户能够更改应用程序权限,并执行其他特定于平台的任务。

平台实现细节

本部分介绍与 IAppInfo 接口相关的特定于平台的实现详细信息。

应用信息提取自用于以下字段的 AndroidManifest.xml

  • BuildStringmanifest 节点中的 android:versionCode
  • Nameapplication 节点中的 android:label
  • PackageNamemanifest 节点中的 package
  • VersionStringmanifest 节点中的 android:versionName

请求的主题

Android 使用配置模式来指定要向用户请求的主题类型。 它可以由用户更改,也可以在节电模式启用时更改,具体视 Android 版本而定。

有关详细信息,请参阅官方的 Android 深色主题文档