我正在尝试访问 Xamarin.iOS 应用程序中的地址簿,我已经尝试过以下代码:
var addressBook = AddressBook.ABAddressBook.Create(out NSError error);
if (addressBook != null)
{
addressBook.RequestAccess((bool granted, NSError accessError) =>
{
if (granted)
{
//Do something
}
});
}
此代码运行到 if 且 adressBook 不为空。但是 addressBook.RequestAccess(...) 不会运行,应用程序会在未进入 catch 子句的情况下退出。
有人知道这段代码有什么问题吗?我如何检测此类错误,在哪里查找日志或其他内容?
我在连接到 Mac 和 iPhone 6 的 Windows 10 上的 Visual Studio 2017 中使用 Xamarin
请您参考如下方法:
您是否在 info.plist 中包含了 NSContactsUsageDescription 键?
例如:
<key>NSContactsUsageDescription</key>
<string>Your explanation to the user</string>
不这样做通常会导致静默崩溃。
另请注意,从 iOS 9 开始,地址簿 API 已被弃用,取而代之的是 Contacts Framework。 .所以您可能想要实现那个。
