Oli*_*old 8 c# versioning iphone xamarin.ios ios
我正在使用针对5.0 SDK构建的应用程序来定位IOS 4.3和5.0,并且只有当应用程序在iOS5设备上运行时才想添加对iOS5中引入的Twitter功能的支持.在运行时可靠地测试这些OS功能的可用性而不会导致应用程序崩溃的推荐方法是什么?
我知道你在Objective-C中使用respondsToSelector来做到这一点,但它是如何在C#中完成的?
pou*_*pou 11
使用最近的MonoTouch版本,您可以使用以下代码:
if (UIDevice.CurrentDevice.CheckSystemVersion (5, 0)) {
window.RootViewController = navigation;
} else {
window.AddSubview (navigation.View);
}
Run Code Online (Sandbox Code Playgroud)
否则,你可以得到一个string从UIDevice.CurrentDevice.SystemVersion做一些检查,用自己的代码.
跟进评论,包括我...
如果您想按功能检查,您可以执行以下操作:
MonoTouch.Twitter.TWRequest req = new MonoTouch.Twitter.TWRequest ();
if (req.Handle == IntPtr.Zero) {
Console.WriteLine ("No Twitter support before iOS5");
}
Run Code Online (Sandbox Code Playgroud)
发生的事情是创建TWRequest实例的选择器将返回null,并且.NET对象将以无效(不可用)状态创建,您可以使用该Handle属性进行查询.再次YMMV,测试是关键:-)
| 归档时间: |
|
| 查看次数: |
2081 次 |
| 最近记录: |