Skopiowano z zadanego pytania:
Aplikacje Windows Phone 8.1 Aplikacje Silverlight mogą korzystać z interfejsów API .NET. Nie ma obsługiwanego mechanizmu, aby uzyskać numer wersji w aplikacjach Universal 8.1, ale możesz spróbować użyć odbicia, aby uzyskać klasę Windows 10 AnalyticsInfo
, która przynajmniej podpowie Ci numer wersji, jeśli używasz systemu Windows 10.
Uwaga: Sprawdzanie wersji OS to prawie zawsze niewłaściwą czynność, chyba że po prostu wyświetlasz ją użytkownikowi (np. W polu "Informacje") lub przesyłasz ją na serwer analityczny zaplecza dla numer chrupanie. Nie należy go używać do podejmowania jakichkolwiek decyzji w czasie wykonywania, ponieważ generalnie jest to słabe proxy dla niezależnie od tego, co faktycznie próbujesz zrobić, aby uzyskać.
Oto przykład:
var analyticsInfoType = Type.GetType(
"Windows.System.Profile.AnalyticsInfo, Windows, ContentType=WindowsRuntime");
var versionInfoType = Type.GetType(
"Windows.System.Profile.AnalyticsVersionInfo, Windows, ContentType=WindowsRuntime");
if (analyticsInfoType == null || versionInfoType == null)
{
Debug.WriteLine("Apparently you are not on Windows 10");
return;
}
var versionInfoProperty = analyticsInfoType.GetRuntimeProperty("VersionInfo");
object versionInfo = versionInfoProperty.GetValue(null);
var versionProperty = versionInfoType.GetRuntimeProperty("DeviceFamilyVersion");
object familyVersion = versionProperty.GetValue(versionInfo);
long versionBytes;
if (!long.TryParse(familyVersion.ToString(), out versionBytes))
{
Debug.WriteLine("Can't parse version number");
return;
}
Version uapVersion = new Version((ushort)(versionBytes >> 48),
(ushort)(versionBytes >> 32),
(ushort)(versionBytes >> 16),
(ushort)(versionBytes));
Debug.WriteLine("UAP Version is " + uapVersion);
Oczywiście można aktualizować ten powrót wersję itp zamiast je drukować do konsoli debugowania.
To powinno pomóc http://stackoverflow.com/questions/24122013/getting-windows-phone-version-and-device-name-in-windows-phone-8-1-xaml – Sajeetharan
Możliwa duplikat http://stackoverflow.com/questions/17406850/how-can-we-check-if-the-current-os-is-win8-or-blue – vikky