Informasi perangkat
Artikel ini menjelaskan bagaimana Anda dapat menggunakan antarmuka .NET Multi-platform App UI (.NET MAUI) IDeviceInfo untuk membaca informasi tentang perangkat yang dijalankan aplikasi.
Implementasi IDeviceInfo
default antarmuka tersedia melalui DeviceInfo.Current properti . IDeviceInfo
Antarmuka dan DeviceInfo
kelas terkandung dalam Microsoft.Maui.Devices
namespace layanan.
Membaca info perangkat
Antarmuka menyediakan IDeviceInfo
banyak properti yang menggambarkan perangkat, seperti produsen dan idiom. Contoh berikut menunjukkan membaca properti info perangkat:
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();
}
Untuk mengakses nama perangkat yang ditetapkan pengguna melalui IDeviceInfo.Name properti di iOS 16 dan yang lebih baru, bukan nama perangkat generik, aplikasi Anda harus memenuhi kriteria tertentu dan diberi com.apple.developer.device-information.user-assigned-device-name
hak. Untuk informasi selengkapnya, lihat com.apple.developer.device-information.user-assigned-device-name
di developer.apple.com.
Mendapatkan platform perangkat
Properti IDeviceInfo.Platform
mewakili sistem operasi tempat aplikasi berjalan. Jenis menyediakan DevicePlatform properti untuk setiap sistem operasi:
- DevicePlatform.Android
- DevicePlatform.iOS
- DevicePlatform.macOS
- DevicePlatform.MacCatalyst
- DevicePlatform.tvOS
- DevicePlatform.Tizen
- DevicePlatform.WinUI
- DevicePlatform.watchOS
- DevicePlatform.Unknown
Contoh berikut menunjukkan pemeriksaan apakah IDeviceInfo.Platform properti cocok dengan Android
sistem operasi:
private bool IsAndroid() =>
DeviceInfo.Current.Platform == DevicePlatform.Android;
Mendapatkan jenis perangkat
Properti IDeviceInfo.Idiom mewakili jenis perangkat yang dijalankan aplikasi, seperti komputer desktop atau tablet. Jenis menyediakan DeviceIdiom properti untuk setiap jenis perangkat:
- DeviceIdiom.Phone
- DeviceIdiom.Tablet
- DeviceIdiom.Desktop
- DeviceIdiom.TV
- DeviceIdiom.Watch
- DeviceIdiom.Unknown
Contoh berikut menunjukkan perbandingan nilai dengan IDeviceInfo.Idiom
DeviceIdiom
properti:
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");
}
Jenis perangkat
IDeviceInfo.DeviceType properti enumerasi untuk menentukan apakah aplikasi berjalan pada perangkat fisik atau virtual. Perangkat virtual adalah simulator atau emulator.
bool isVirtual = DeviceInfo.Current.DeviceType switch
{
DeviceType.Physical => false,
DeviceType.Virtual => true,
_ => false
};
Perbedaan platform
Bagian ini menjelaskan perbedaan khusus platform dengan informasi perangkat.
Tidak ada perbedaan platform.