iOS 5.0 Monotouch的NSUrl.ToString()方法,可能有bug

时间:2012-09-09 00:24:58

标签: c# ios ios5 xamarin.ios

我发现我认为iOS 5.0中的一个有趣的错误(此代码在5.1中完美运行)。在使用大量的Console.Write()缩小范围之后,我将崩溃范围缩小到:

nsUrl.ToString();

这可以是MonoTouch库或iOS。

还有其他人遇到过这个吗?这很烦人,因为我们显然希望支持最低的iOS版本。

1 个答案:

答案 0 :(得分:0)

在MonoTouch中,ToString子类的默认NSObject实现是调用description选择器。

在某些情况下(是的,因iOS版本而异),调用description可能会失败(甚至会导致进程崩溃)。这通常发生在本机对象处于错误状态时(例如,错误初始化,无效值......)。

MonoTouch尝试使用不同的ToString实现来处理此类情况(如果可能且已知)(例如,使用额外检查或回退到默认ToString,返回类型名称)。

注意:如果您发现此类行为,请在bug report中报告,我们会查看是否可以采用不同的方式处理这些行为。