创建ABAddressBook
对象时,我在 iOS6 上收到以下警告。我这样使用它:
ABAddressBook ab = new ABAddressBook ();
结果:
Warning CS0618: `MonoTouch.AddressBook.ABAddressBook.ABAddressBook()' is obsolete: `Use static Create method in iOS 6.0' (CS0618)
我应该如何使用上面提到的静态方法?
创建ABAddressBook
对象时,我在 iOS6 上收到以下警告。我这样使用它:
ABAddressBook ab = new ABAddressBook ();
结果:
Warning CS0618: `MonoTouch.AddressBook.ABAddressBook.ABAddressBook()' is obsolete: `Use static Create method in iOS 6.0' (CS0618)
我应该如何使用上面提到的静态方法?
最重要的是,当您看到有关已弃用[Obsolete]
API 的警告时,请将其与您的应用程序目标进行比较。
例如,如果您希望您的应用程序在 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");