c# - ABAddressBook 已弃用,如何使用 ABAddressBook.Create 方法?

标签 c# ios6 xamarin.ios abaddressbook

在 iOS6 上创建 ABAddressBook 对象时,我收到以下警告。我这样使用它:

ABAddressBook ab = new ABAddressBook ();

结果:

Warning CS0618: `MonoTouch.AddressBook.ABAddressBook.ABAddressBook()' is obsolete: `Use static Create method in iOS 6.0' (CS0618)

上面提到的静态方法应该如何使用?

最佳答案

当您看到有关已弃用 API 的[Obsolete]警告时,最重要的事情是将其与您的应用程序目标进行比较。

例如如果您希望您的应用程序在 iOS 5.1 上运行(因此它在原始 iPad 上执行),那么您可能无法使用新的 API(例如本例中的 Create)。

如果您仅针对 iOS 6(及更高版本),那么您可以停止使用已弃用的 API。

OTOH,它确实意味着旧代码不起作用。它仍然如此,因为 Apple 希望您创建可跨多个 iOS 版本运行的应用程序。因此,您有时间将它们从您的应用程序中删除(在 Apple 将它们从库中删除之前)。

how to use the static method as mentioned above ?

以下是如何使用新 API:

NSError error;
ABAddressBook ab = ABAddressBook.Create (out error);
if (error != null)
    Console.WriteLine ("uho, deal with error");

关于c# - ABAddressBook 已弃用,如何使用 ABAddressBook.Create 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14989649/

相关文章:

c# - 如果在连接字符串时出错,则表示简写

c# - 添加范围然后查找重复项或检查每个项目的冲突是否更快?

ios - Xamarin:无法安装应用程序 AMDeviceSecureInstallApplicationBundle 返回:0xe8008015

c# - 如何创建可重用的用户控件并将命令绑​​定到它?

c# - Xamarin.Forms 填充 ListView

objective-c - 在 objective-c 中将一个图像放在另一个图像之上用于按钮

ios - 使用媒体查询检测 Mobile Safari 全屏模式

objective-c - 与 iOS 6.0 原生 Facebook 集成共享 : "Posted via my app name"?

c# - 子类化 UICollectionView

c# - 在 C# 中运行线程时在 GUI 中显示消息