Geräteinformationen
In diesem Artikel wird beschrieben, wie Sie die .NET Multi-Platform App UI (.NET MAUI) IDeviceInfo-Schnittstelle verwenden können, um Informationen zum Gerät zu lesen, auf dem die App ausgeführt wird.
Die Standardimplementierung der IDeviceInfo
-Schnittstelle ist über die DeviceInfo.Current-Eigenschaft verfügbar. Die IDeviceInfo
-Schnittstelle sowie die DeviceInfo
-Klasse sind im Microsoft.Maui.Devices
-Namespace enthalten.
Lesen der Geräteinformationen
Die IDeviceInfo
-Schnittstelle stellt viele Eigenschaften bereit, die das Gerät beschreiben, z. B. Hersteller und Sprache. Im folgenden Codebeispiel werden die Geräteinformationen-Eigenschaften veranschaulicht.
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();
}
Abrufen der Geräteplattform
Die IDeviceInfo.Platform
-Eigenschaft stellt das Betriebssystem dar, auf dem die App ausgeführt wird. Der DevicePlatform-Typ stellt eine Eigenschaft für jedes Betriebssystem bereit:
- DevicePlatform.Android
- DevicePlatform.iOS
- DevicePlatform.macOS
- DevicePlatform.MacCatalyst
- DevicePlatform.tvOS
- DevicePlatform.Tizen
- DevicePlatform.WinUI
- DevicePlatform.watchOS
- DevicePlatform.Unknown
Im folgenden Beispiel wird veranschaulicht, wie überprüft wird, ob die IDeviceInfo.Platform-Eigenschaft mit dem Android
-Betriebssystem übereinstimmt:
private bool IsAndroid() =>
DeviceInfo.Current.Platform == DevicePlatform.Android;
Abrufen des Gerätetyps
Die IDeviceInfo.Idiom-Eigenschaft stellt den Typ des Geräts dar, auf dem die App ausgeführt wird, z. B. ein Desktopcomputer oder ein Tablet. Der DeviceIdiom-Typ stellt eine Eigenschaft für jeden Gerätetyp bereit:
- DeviceIdiom.Phone
- DeviceIdiom.Tablet
- DeviceIdiom.Desktop
- DeviceIdiom.TV
- DeviceIdiom.Watch
- DeviceIdiom.Unknown
Im folgenden Beispiel wird veranschaulicht, wie der IDeviceInfo.Idiom
-Wert mit einer DeviceIdiom
-Eigenschaft verglichen wird.
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");
}
Gerätetyp
Die IDeviceInfo.DeviceType-Eigenschaft entspricht einer Enumeration, um festzustellen, ob die Anwendung auf einem physischen oder virtuellen Gerät ausgeführt wird. Ein virtuelles Gerät ist ein Simulator oder Emulator.
bool isVirtual = DeviceInfo.Current.DeviceType switch
{
DeviceType.Physical => false,
DeviceType.Virtual => true,
_ => false
};
Plattformunterschiede
In diesem Abschnitt werden die plattformspezifischen Unterschiede bei den Geräteinformationen beschrieben.
Keine Plattformunterschiede.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für