У меня есть приложение для Windows Phone 7. Я создал визуальную студию 2012 на рабочем столе Windows 8. Я пытаюсь использовать приложение на устройстве Windows Phone 8 с некоторыми изменениями. Как я могу программно определить, является ли устройство Windows Phone 7 или Windows Phone 8?
Определить версию ОС - Windows Phone 7 или Windows Phone 8?
Ответы (4)
Как и на любой другой платформе с C#: Environment.OSVersion
Вы можете использовать этот набор инструментов для проверки версии телефона: http://mangopollo.codeplex.com/
bool IsWP8() : возвращает, если приложение работает на телефоне с Windows Phone 8.
РЕДАКТИРОВАТЬ: Если вы не хотите использовать весь набор инструментов, вот как он его проверяет:
public static bool IsWP8 { get { return Environment.OSVersion.Version >= TargetedVersion; } }
private static Version TargetedVersion = new Version(8, 0);
Кредиты оригинальному автору.
Вам это не нужно.
Либо это приложение для Windows Phone 7, которое будет работать как на устройствах с Windows Phone 7, так и на устройствах с Windows Phone 8, либо это приложение для Windows Phone 8.
Приложение Windows Phone 7, работающее на Windows Phone 8, не должно делать ничего, чего не должно делать устройство Windows Phone 7.
MediaHistoryItem.MaxImageSize
, а не проверять ОС.
- person Justin Niessner; 09.12.2013
В этой статье также есть несколько хороших стратегий.
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202996(v=vs.105).aspx
Это касается не только времени выполнения, например, ваш код может работать одним способом на wp7 и другим на wp8 в зависимости от доступности API. В этом случае #define может быть лучшим способом, потому что вам действительно все равно, на каком устройстве вы работаете, а для какого SDK вы были собраны.