如何在Xamarin.Forms中获取正确的windows phone版本

如何在Xamarin.Forms中获取正确的windows phone版本,xamarin,xamarin.forms,windows-phone-8.1,windows-10-universal,Xamarin,Xamarin.forms,Windows Phone 8.1,Windows 10 Universal,在最新版本中,Xamarin.Forms Device.OS属性为Windows Phone 8.1和Windows 10 UWP返回“Windows”值。 有没有办法获得正确的设备操作系统版本来区分Windows Phone 8.1和Windows 10 UWP if (Device.Idiom == TargetIdiom.Desktop) { // UWP } else if (Device.OS == TargetPlatform.WinPhone) { // Win

在最新版本中,Xamarin.Forms Device.OS属性为Windows Phone 8.1和Windows 10 UWP返回“Windows”值。 有没有办法获得正确的设备操作系统版本来区分Windows Phone 8.1和Windows 10 UWP

if (Device.Idiom == TargetIdiom.Desktop)
{ 
    // UWP
}
else if (Device.OS == TargetPlatform.WinPhone)
{ 
    // WinPhone
}
else if (Device.OS == TargetPlatform.Windows)
{ 
    // Windows 8
}
只是解释一下,Windows8的习惯用法是TargetIdiom.Tablet,所以唯一返回到TargetIdiom.Desktop的操作系统是UWP


希望有帮助

我需要区分Windows UWP mobile和Windows Phone 8.1。xamarin为.And Device.Idiom?返回Device.OS“Windows”?我的项目不打算在移动电话以外的任何类型的设备上使用。所以在这些设备上,习惯用法总是“Phone”,而Device.OS是“Windows”。哦,当然,如果您还没有尝试过,那么请尝试使用Device.RuntimePlatform。它将返回一个字符串,您可以将其与Device.Windows或Device.WinPhone进行比较。我认为这将满足您的需要:)