Windows Mobile: получаем информацио об устройстве (DeviceInfo)
Большое разнообразие мобильных устройств требует от разработчиков знать, с чем они имеют дело. Рассмотрим? как получить программно некоторые свойства мобильного устройства.
Поворот экрана
Получается (меняется) с помощью свойства SystemSettings.ScreenOrientation, который может принимать одно из значений Angle0, Angle90, Angle180, Angle270.
Разрешение экрана
Можно узнать с помощью свойств:
Screen.PrimaryScreen.Bounds.Width
Screen.PrimaryScreen.Bounds.Height
Тип устройства
Тип устройства может быть либо SmartPhone, либо PocketPC. Встроенной функции в Windows Mobile SDK 6.0 нет, поэтому нужно использовать Windows API.
using System; using System.Linq; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; public class DeviceInfo { [DllImport("coredll.dll")] private static extern bool SystemParametersInfo(uint uiAction, uint uiParam, StringBuilder pvParam, uint fWinIni); const uint SPI_GETPLATFORMTYPE = 257; const int bufferSize = 200; public static string GetDeviceType() { StringBuilder platformType = new StringBuilder(bufferSize); SystemParametersInfo(SPI_GETPLATFORMTYPE, bufferSize, platformType, 0); string strDeviceType = platformType.ToString(); return strDeviceType; } }