Informace o zařízení
Tento článek popisuje, jak pomocí rozhraní .NET Multi-Platform App UI (.NET MAUI) IDeviceInfo přečíst informace o zařízení, na kterém je aplikace spuštěná.
Výchozí implementace IDeviceInfo
rozhraní je k dispozici prostřednictvím DeviceInfo.Current vlastnosti. Rozhraní IDeviceInfo
i DeviceInfo
třída jsou obsaženy v Microsoft.Maui.Devices
oboru názvů.
Čtení informací o zařízení
Rozhraní IDeviceInfo
poskytuje mnoho vlastností, které popisují zařízení, jako je výrobce a idiom. Následující příklad ukazuje čtení vlastností informací o zařízení:
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();
}
Pokud chcete získat přístup k názvu zařízení přiřazeného uživatelem prostřednictvím IDeviceInfo.Name vlastnosti v iOSu 16 a novějším, než je obecný název zařízení, musí vaše aplikace splňovat určitá kritéria a mít přiřazený com.apple.developer.device-information.user-assigned-device-name
nárok. Další informace najdete v developer.apple.com com.apple.developer.device-information.user-assigned-device-name
.
Získání platformy zařízení
Vlastnost IDeviceInfo.Platform
představuje operační systém, na kterém aplikace běží. Typ DevicePlatform poskytuje vlastnost pro každý operační systém:
- DevicePlatform.Android
- DevicePlatform.iOS
- DevicePlatform.macOS
- DevicePlatform.MacCatalyst
- DevicePlatform.tvOS
- DevicePlatform.Tizen
- DevicePlatform.WinUI
- DevicePlatform.watchOS
- DevicePlatform.Unknown
Následující příklad ukazuje kontrolu, zda IDeviceInfo.Platform vlastnost odpovídá operačnímu Android
systému:
private bool IsAndroid() =>
DeviceInfo.Current.Platform == DevicePlatform.Android;
Získání typu zařízení
Vlastnost IDeviceInfo.Idiom představuje typ zařízení, na kterém je aplikace spuštěná, například stolní počítač nebo tablet. Typ DeviceIdiom poskytuje vlastnost pro každý typ zařízení:
- DeviceIdiom.Phone
- DeviceIdiom.Tablet
- DeviceIdiom.Desktop
- DeviceIdiom.TV
- DeviceIdiom.Watch
- DeviceIdiom.Unknown
Následující příklad ukazuje porovnání IDeviceInfo.Idiom
hodnoty s DeviceIdiom
vlastností:
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");
}
Typ zařízení
IDeviceInfo.DeviceType vlastnost výčtu pro určení, zda aplikace běží na fyzickém nebo virtuálním zařízení. Virtuální zařízení je simulátor nebo emulátor.
bool isVirtual = DeviceInfo.Current.DeviceType switch
{
DeviceType.Physical => false,
DeviceType.Virtual => true,
_ => false
};
Rozdíly mezi platformami
Tato část popisuje rozdíly specifické pro platformu s informacemi o zařízení.
Žádné rozdíly mezi platformami.