我正在做一个使用Xamarin.iOS的项目,我遇到了一种情况,模拟器中的行为在实际设备上莫名其妙地不一样(设置Map视图中心的区域不同)。我希望能够在运行时根据应用程序是在模拟器上运行还是在真实的设备上运行来设置变量的值。我怎么能检测到这一点?
ylamdve61#
您可以在运行时执行不同的代码,如下所示:
if (ObjCRuntime.Runtime.Arch == Arch.DEVICE) { } else { }
但是调查一下(在这里询问,论坛,bug报告)为什么两者之间的行为不同总是很好的(只是为了确保它不会隐藏一个可能会咬你的bug)。
jum4pzuy2#
沿着这条路走:
public static bool Isiossimulator() { bool Return = false; #if IOS if (DeviceInfo.DeviceType == DeviceType.Virtual) Return = true; #endif return Return; }
还要确保采用这种方法不是为了隐藏一些bug。
2条答案
按热度按时间ylamdve61#
您可以在运行时执行不同的代码,如下所示:
但是调查一下(在这里询问,论坛,bug报告)为什么两者之间的行为不同总是很好的(只是为了确保它不会隐藏一个可能会咬你的bug)。
jum4pzuy2#
沿着这条路走:
还要确保采用这种方法不是为了隐藏一些bug。