创建ABAddressBook
对象时,我在iOS6上收到以下警告。我正在使用它:
ABAddressBook ab = new ABAddressBook ();
结果:
Warning CS0618: `MonoTouch.AddressBook.ABAddressBook.ABAddressBook()' is obsolete: `Use static Create method in iOS 6.0' (CS0618)
我应该如何使用上面提到的静态方法?
答案 0 :(得分:5)
最重要的是,当您看到关于已弃用 API的[Obsolete]
警告时,请将其与您的应用程序目标进行比较。
E.g。如果您希望您的应用程序在iOS 5.1上运行(因此它在原始iPad上执行),那么您可能无法使用新的API(例如,在这种情况下为Create
)。
如果您只定位iOS 6(及更高版本),那么可以停止使用已弃用的 API。
OTOH它不意味着旧代码不起作用。它仍然有效,因为Apple希望您创建适用于多个iOS版本的应用程序。因此,您有时间从应用程序中删除它们(在Apple将其从库中删除之前)。
如何使用上面提到的静态方法?
以下是使用新API的方法:
NSError error;
ABAddressBook ab = ABAddressBook.Create (out error);
if (error != null)
Console.WriteLine ("uho, deal with error");