Ask*_*ein 27 c# xamarin.ios xamarin.android xamarin
使用Xamarin.Android和Xamarin.iOS,我现在需要共享代码部分中的当前操作系统.无论是enum,int还是字符串,都没关系.
我试过这个:
System.Environment.OSVersion
Run Code Online (Sandbox Code Playgroud)
对于某些内核版本信息,它始终是"Unix".
有关于Android的信息,例如
Android.OS.Build.VERSION
Run Code Online (Sandbox Code Playgroud)
但它需要在Android特定代码部分.有没有办法知道公共库中的当前操作系统?
mau*_*are 51
您也可以尝试这个,它可能是我找到的最佳解决方案:
if(Device.RuntimePlatform == Device.iOS)
{
//iOS stuff
}
else if(Device.RuntimePlatform == Device.Android)
{
}
Run Code Online (Sandbox Code Playgroud)
我正在使用DeviceInfo插件.它支持Android, iOs, Windows Phone Silverlight, Windows Phone RT, Windows Store RT, Windows 10 UWP并且它完美地工作.
它可以PCL像这样使用(你必须将插件添加到平台项目中PCL):
var platform = CrossDeviceInfo.Current.Platform;
switch(platform){
case Platform.iOS:
// iOS
break;
case Platform.Android:
// Android
break;
}
Run Code Online (Sandbox Code Playgroud)
这种代码不是一个好习惯PCL,它更好地使用Dependency Injection(这个插件使用它)来定制平台特定的行为.
| 归档时间: |
|
| 查看次数: |
18080 次 |
| 最近记录: |