Я разрабатываю приложение, которое является универсальным приложением Windows 8.1. Я хочу получить версию os. до Windows 10 Mobile я мог предположить, что эта версия - 8.1, но в настоящее время это предположение неверно. есть ли способ получить версию os в универсальном приложении Windows 8.1?Получить версию ОС в windows universal 8.1
ответ
Windows Phone 8.1 Приложения Silverlight могут использовать API-интерфейсы .NET. Нет никакого поддерживаемого механизма для получения номера версии в приложениях Universal 8.1, но вы можете попытаться использовать отражение, чтобы получить класс Windows 10 AnalyticsInfo
, который, по крайней мере, укажет вам номер версии, если вы работаете в Windows 10.
Примечание: Проверка версии ОС почти всегда неправильной вещи, если вы просто не показываете ее пользователю (например, в поле «О программе») или отправляете ее на ваш серверный сервер аналитики для число хруст. Он не должен использоваться для принятия каких-либо решений во время выполнения, потому что в целом это плохой прокси-сервер для , что бы вы ни пытались сделать на самом деле.
Вот пример:
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);
- 1. Получить разрешение в Windows 8.1 Universal
- 2. в ОС Windows 8.1
- 3. C# Получить имя ОС Windows 8.1
- 4. Windows 8.1 Universal App References
- 5. Windows 8.1 Universal DatePicker styling
- 6. Как получить конкретную версию ОС на Ruby?
- 7. Невозможно выбрать целевую версию ОС Windows Phone до версии 8.1
- 8. Пользовательский шрифт в Windows 8.1 Universal
- 9. Как запустить Windows Phone Emulator 8.1 на ОС Windows 8.1 без ОС Windows 8.1 Pro версии ОС?
- 10. Получить версию ОС через Flash
- 11. Windows Universal App 8.1 Пользовательский контроль пользователя
- 12. Windows 8.1 Universal явно создает MainPage
- 13. Admob on Windows 8.1 Universal Build
- 14. Использование метода async для Windows Universal 8.1
- 15. ObservableCollection фильтрация на Windows Phone 8.1 Universal
- 16. Стиль MediaElement в ОС Windows 8.1
- 17. сделать телефонный звонок в ОС Windows 8.1
- 18. Установка Windows Universal App 8.1 в устройствах (машина Windows 10,8.1)
- 19. Как получить доступ управления внутри HubSection в ОС Windows 8.1
- 20. Получить текущую версию ОС в Windows 10 в C#
- 21. Как получить версию приложения на Windows Phone Universal App?
- 22. Windows.Devices.Custom.IOControlCode в Windows 10 Universal
- 23. ScrollViewer CanContentScroll Свойство не найдено (Windows 8.1 Universal App)
- 24. Получить версию ОС в приложениях для Windows Store
- 25. Почему maven не показывает правильную версию ОС
- 26. Как получить версию приложения Windows Phone 8.1 в коде?
- 27. Максимальное использование ОС Windows 8.1 <= 30%
- 28. Запуск Windows 10 Universal Apps на Windows 8.1
- 29. Qt установки на ОС Windows 8.1
- 30. Странное поведение TextBox в ОС Windows 8.1 и Windows 10
@cFrozenDeath я вижу. но есть ли способ узнать, что это устройство - 8,1 или 10? –
Конечно, у них разные версии .NET. Если вы создадите приложение для 8.1, оно может работать в 8.1 и 10; но если вы построите его на 10, он не будет работать в 8.1. Учтите, что вы не можете знать, если это 8.1 или 10, если вы построите для 8.1 –
@cFrozenDeath это очень странно для меня, почему Microsoft не раскрывает такие Api разработчикам. то как AdDuplex знает версию ОС (я думаю, что у них есть sdk для Windows universal)? –