jeudi 4 février 2016

How to find the device platform/type your Windows 10 application is running on (Desktop/Mobile/Universal/Team/Xbox)

I wanted to be able to detect on what kind of device my UWP application was running and did not wanted to reinvent the wheel, I looked at what Wagonli did here and adapted it to my needs.

All I needed this helper to do was to tell me whether my application was running on a Phone or Tablet device.  For me I don't really fined it necessary to need to differentiate Desktop and Tablet for me its the same thing( for my UWP apps).

And for the fun i added Xbox so that you can also check if your appliction is running on a Windows 10 Xbox (Thanks @RudyHuyn)

Thus I ended up with this:

public static class DeviceTypeHelper
    public static DeviceTypeEnum GetDeviceType()
        switch (Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily)
            case "Windows.Desktop":
                return DeviceTypeEnum.Tablet;
            case "Windows.Mobile":
                return DeviceTypeEnum.Phone;
            case "Windows.Universal":
                return DeviceTypeEnum.IoT;
            case "Windows.Team":
                return DeviceTypeEnum.SurfaceHub;
            case "Windows.Xbox":
                return DeviceTypeEnum.Xbox;
                return DeviceTypeEnum.Other;

public enum DeviceTypeEnum

My gist:
Original gist: