共用方式為


裝置資訊

流覽範例。 流覽範例

本文說明如何使用 .NET 多平臺應用程式 UI (.NET MAUI) IDeviceInfo 介面來讀取應用程式執行裝置的相關信息。

介面的預設實作 IDeviceInfo 可透過 DeviceInfo.Current 屬性取得。 IDeviceInfo介面和DeviceInfo類別都包含在 命名空間中Microsoft.Maui.Devices

讀取裝置資訊

介面 IDeviceInfo 提供許多描述裝置的屬性,例如製造商和語式。 下列範例示範如何讀取裝置資訊屬性:

private void ReadDeviceInfo()
{
    System.Text.StringBuilder sb = new System.Text.StringBuilder();

    sb.AppendLine($"Model: {DeviceInfo.Current.Model}");
    sb.AppendLine($"Manufacturer: {DeviceInfo.Current.Manufacturer}");
    sb.AppendLine($"Name: {DeviceInfo.Current.Name}");
    sb.AppendLine($"OS Version: {DeviceInfo.Current.VersionString}");
    sb.AppendLine($"Idiom: {DeviceInfo.Current.Idiom}");
    sb.AppendLine($"Platform: {DeviceInfo.Current.Platform}");

    bool isVirtual = DeviceInfo.Current.DeviceType switch
    {
        DeviceType.Physical => false,
        DeviceType.Virtual => true,
        _ => false
    };

    sb.AppendLine($"Virtual device? {isVirtual}");

    DisplayDeviceLabel.Text = sb.ToString();
}

若要透過 IDeviceInfo.Name iOS 16 和更新版本中的 屬性存取使用者指派的裝置名稱,而不是一般裝置名稱,您的應用程式必須符合特定準則並獲 com.apple.developer.device-information.user-assigned-device-name 指派權利。 如需詳細資訊,請參閱 com.apple.developer.device-information.user-assigned-device-name developer.apple.com。

取得裝置平臺

屬性 IDeviceInfo.Platform 代表應用程式正在執行的作業系統。 此 DevicePlatform 類型會為每個作業系統提供屬性:

下列範例示範如何檢查 屬性Android是否符合IDeviceInfo.Platform操作系統:

private bool IsAndroid() =>
    DeviceInfo.Current.Platform == DevicePlatform.Android;

取得裝置類型

屬性 IDeviceInfo.Idiom 代表應用程式正在執行的裝置類型,例如桌面電腦或平板電腦。 此 DeviceIdiom 類型會為每個裝置類型提供屬性:

下列範例示範如何 IDeviceInfo.Idiom 比較 值與 DeviceIdiom 屬性:

private void PrintIdiom()
{
    if (DeviceInfo.Current.Idiom == DeviceIdiom.Desktop)
        Console.WriteLine("The current device is a desktop");
    else if (DeviceInfo.Current.Idiom == DeviceIdiom.Phone)
        Console.WriteLine("The current device is a phone");
    else if (DeviceInfo.Current.Idiom == DeviceIdiom.Tablet)
        Console.WriteLine("The current device is a Tablet");
}

裝置類型:

IDeviceInfo.DeviceType 屬性 列舉,以判斷應用程式是否在實體或虛擬裝置上執行。 虛擬裝置是模擬器 (Simulator) 還是模擬器 (Emulator)。

bool isVirtual = DeviceInfo.Current.DeviceType switch
{
    DeviceType.Physical => false,
    DeviceType.Virtual => true,
    _ => false
};

平台差異

本節說明與裝置信息的平臺特定差異。

無平台差異。