iOS10 上的地址簿崩溃

2024-01-05

在 iOS10.0 中,从联系人选择器中选择联系人会使应用程序崩溃。联系人选择器显示使用ABPeoplePickerNavigationController像这样:

let contactsPicker = ABPeoplePickerNavigationController()
contactsPicker.peoplePickerDelegate = self
self.presentViewController(contactsPicker, animated: true, completion: nil)

这是崩溃日志中的堆栈跟踪:

*** Terminating app due to uncaught exception 'CNPropertyNotFetchedException', reason: 'A property was not requested when contact was fetched.'
*** First throw call stack:
(
    0   CoreFoundation                      0x0000000105a1c34b __exceptionPreprocess + 171
    1   libobjc.A.dylib                     0x00000001052cd21e objc_exception_throw + 48
    2   CoreFoundation                      0x0000000105a85265 +[NSException raise:format:] + 197
    3   Contacts                            0x000000010dc6d96f -[CNContact sectionForSortingByFamilyName] + 160
    4   Contacts                            0x000000010dc3e18e __55-[CNContact(iOSABCompatibility) overwritePerson:error:]_block_invoke + 44
    5   CoreFoundation                      0x00000001059ad2fd __53-[__NSArrayI enumerateObjectsWithOptions:usingBlock:]_block_invoke + 77
    6   CoreFoundation                      0x00000001059ad1df -[__NSArrayI enumerateObjectsWithOptions:usingBlock:] + 207
    7   Contacts                            0x000000010dc3e0f4 -[CNContact(iOSABCompatibility) overwritePerson:error:] + 240
    8   Contacts                            0x000000010dc3dfc0 -[CNContact(iOSABCompatibility) detachedPersonWithError:] + 46
    9   AddressBookUI                       0x00000001057bdd77 -[ABPeoplePickerNavigationController contactPicker:didSelectContact:] + 145
    10  ContactsUI                          0x0000000112396eb2 -[CNContactPickerViewController pickerDidSelectContact:property:] + 306
    11  ContactsUI                          0x000000011243ee6f -[CNContactPickerHostViewController pickerDidSelectContact:property:] + 95
    12  ContactsUI                          0x000000011243f5ec __71-[CNContactPickerExtensionHostContext pickerDidSelectContact:property:]_block_invoke + 66

我已经添加了NSContactsUsageDescription在 info.plist 中讨论iOS 10 beta 上的联系人地址簿崩溃 https://stackoverflow.com/questions/38326099/contact-address-book-crash-on-ios-10-beta但这没有帮助,我无法使用CNContactPickerViewController因为我需要支持iOS8设备。


伊姆兰·拉希姆

从 Erdekhayser 的解决方案(iOS 10 beta 上的联系人地址簿崩溃 https://stackoverflow.com/questions/38326099/contact-address-book-crash-on-ios-10-beta)

您可以使用此方法来检查 CNContactPickerViewController 是否可用?

if (NSClassFromString(@"CNContactPickerViewController")) {
        // iOS 9, 10, use CNContactPickerViewController
        CNContactPickerViewController *picker = [[CNContactPickerViewController alloc] init];
        picker.delegate = self;
        picker.displayedPropertyKeys = @[CNContactPhoneNumbersKey];
        [pr presentViewController:picker animated:YES completion:nil];
    }else{
        // iOS 8 Below, use ABPeoplePickerNavigationController
        ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
        picker.peoplePickerDelegate = self;
        [pr presentViewController:picker animated:YES completion:nil];
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS10 上的地址簿崩溃 的相关文章

  • iOS 10 中使用自动调整单元格大小的 collectionViewContentSize

    在 iOS 10 之前 我有一个自调整大小的表视图 它仅由 UICollectionView 和使用标准 UICollectionViewFlowLayout 的自调整大小单元格组成 集合视图单元格的大小使用自动布局来调整 为了使表格单元格
  • iOS 10 iMessage 贴纸应用中 MSSticker Peels 的回调

    我正在 iOS 10 中尝试贴纸 iMessage 应用程序 但遇到了问题override func didStartSending message MSMessage conversation MSConversation 中的方法MSM
  • 如何从ABRecordID获取ABRecordRef?

    我已访问地址簿并成功从中提取了记录和必要信息 我也提取了recordid 我的问题是如何使用这个 recordid 来提取记录 我正在使用的代码是 ABRecordID recordId ABAddressBookRef addressBo
  • Alamofire HTTPS 10.3 中的更改

    我目前正在一个项目中使用 Alamofire 并且看到了有关具有不同功能的 10 3 beta 的问题 我有一个在 iOS 10 2 模拟器中运行良好的相同项目 我使用自签名证书向 HTTPS url 发出 get 请求 当我在安装了相同证
  • XCode 8 和 Swift 3 中的 UserDefaults.standard set nil 错误

    这似乎是一个错误 我正在尝试删除默认值中的现有值 UserDefaults standard set nil forKey test me let val UserDefaults standard object forKey test m
  • 如何访问通讯录中当前用户的记录?

    地址簿 API 中有没有办法以编程方式访问当前用户的记录 也就是说 如果这部iPhone是John Smith的 那么要获取John Smith的联系人记录 以通讯录中标记为 我 的记录为准 显然 您可以弹出选择器并让用户从其联系人中选择自
  • 使用 'document.body.scrollHeight;' 计算 UIWebView 内容动态高度在 iOS 10 中返回更大的值

    我正在使用 Objective C 创建一个应用程序 其中我使用的是UIWebView以 HTML 格式显示内容 我正在使用下面的代码UIWebView委托方法webViewDidFinishLoad NSUInteger contentH
  • ABRecordCopyValue 返回 0 ?

    我想做的是获取所有联系人并依赖 如果联系人有 社会档案财产或没有 在获得所有这些联系人之后社会档案财产我会做简单的过滤来知道是否是脸书 推特 在我发布这个问题之前 我花了一整天的时间试图找到这个问题的解决方案 但它允许返回0 ABAddre
  • ABRecordCopyValue() EXC_BAD_ACCESS 错误

    在我的应用程序中 我必须检索用户联系人的某些属性 例如 我需要检索联系人的名字 姓氏 中间名 昵称 组织 职位 部门 生日 电子邮件等 我有一些方法来检索这些属性 但只有几个方法可以工作 尽管它们都很相似 这是我的代码 其中一种方法有效 名
  • IOS Swift - 无法从地址簿中检索个人笔记

    有人有什么建议为什么我可以获得名字 姓氏和生日 但是我无法检索从 iphone 通讯录中提交的笔记吗 准备工作 已授予地址簿访问权限 添加到地址簿中的人员包含所有字段 包括注释 当前结果 nil 仅用于注释 所有其他字段均已正确检索 使用的
  • AVAudioConverter 在 iOS 10 中损坏

    AVAudioConverter 在 iOS 10 中似乎损坏了 该代码在 iOS 9 中工作 现在 错误域 NSOSStatusErrorDomain 代码 50 空 无论使用什么音频格式都会返回 每年 基本的库功能停止工作都让我感到惊讶
  • 错误 ITMS - 90167 在包中找到的应用程序包数量

    在开始撰写有关该错误的文章之前 我正在 macOS Sierra 上运行并使用 Xcode 7 3 1 因此 我从我的应用程序创建一个存档 我验证该应用程序并通过验证 但在上传到应用程序商店时 我收到错误 错误 ITMS 90167 在包中
  • 处理 iOS 10 中的 AutoLayout 约束动画差异?

    我注意到在 iOS 10 Beta 5 即将尝试 Beta 6 中 AutoLayout 约束动画的行为有点不同 例如 此方法的工作方式与之前的 iOS 版本不同 view addConstraints constraints view s
  • iOS10 SDK什么时候设置视图帧大小?

    多年来 我一直在 Swift 和 ObjC 中使用这种技术来制作圆形视图 view layer cornerRadius view frame size width 2 view clipsToBounds true 当 Storyboar
  • iOS10应用关闭时如何响应本地通知?

    当应用程序完全关闭 不在后台 时如何响应本地通知 当应用程序在后台或前台运行时 一切正常 但是当应用程序关闭并且我试图回复通知时 仅 application didFinishLaunchingWithOptions 被呼叫 userNot
  • 从 SiriKit 中的 INExtension 启动应用程序

    我想使用 SiriKit 开始锻炼 开始锻炼需要从应用程序扩展打开主应用程序 Apple 提供的样板文件INStartWorkoutIntentHandling处理程序是 func handle startWorkout startWork
  • iOS 10 GM 与 xcode 8 GM 导致视图因圆角和 ClipsToBounds 消失

    我使用 iOS 10 Beta 7 和 Xcode 8 beta 测试了我的应用程序 一切正常 然而就在几分钟前 我安装了两者现在可用的通用汽车版本 并遇到了一个奇怪的问题 我在我的应用程序和我正在使用的自定义单元格中使用自定义表格视图单元
  • 等到使用removePendingNotificationRequests删除来自UNUserNotificationCenter的本地通知 ios 10 swift 3

    使用新的本地通知UNUserNotificationCenter 我尝试删除带有一些标识符的通知 UNUserNotificationCenter current removePendingNotificationRequests with
  • 文档 Main.storyboard 需要 Xcode 8.0 或更高版本

    我下载了 Xcode beta 并打开了现有的项目 看看它如何与 Xcode 8 beta 一起使用 我从 Xcode 8 打开了 Storyboard 文件 现在 当我从 Xcode 7 3 打开项目时 我无法打开故事板文件 它给出了以下
  • Square 的 CardCase 应用程序如何自动从通讯录中填充用户的详细信息?

    Square 的新卡盒 iOS 应用程序具有 创建帐户 功能 点击它 它会显示一个预先填充了地址簿中用户条目的表单 这怎么可能 有人知道吗 我认为以这种方式获取用户信息是不可能的 据我所知 这不是 iOS 5 0 的事情 我能想到的唯一解决

随机推荐

  • 无法在 Android Oreo 中创建目录(API 26)

    我已经阅读了 Android Oreo 的行为和更改的文档 我知道为 Android Oreo API 26 创建文件目录有不同的过程 Code File mediaStorageDir null if Build VERSION SDK
  • 如何获取带有特定注释的对象的所有字段和属性?

    如何获取使用特定注释进行注释的对象 非类 的所有字段和属性而不进行迭代all它的字段或属性描述符 我的目标是避免对显然没有注释的每个字段或属性进行不必要的迭代 例如 getClass 或不是实例的字段或成员变量的类的任何字段 或者迭代是唯一
  • 无法加载文件或程序集Antlr3.Runtime.dll

    我们使用 TeamCity 作为构建服务器 Net Framework 4 和 ASP NET MVC2 以及 NHibernate 由于最近 Amazon EC2 问题 我们的构建服务器最近离线了 我们正在设置一个新的构建服务器 然而 即
  • 具有 S3 位置的 Tensorboard

    我正在尝试使用 S3 路径tensorboard logdir命令并收到以下错误 tensorflow python framework errors impl UnimplementedError 文件系统方案 s3 未实现 文件 s3
  • 饼图标签被切断

    我正在制作饼图 一些标签被剪掉了 我想缩小情节以容纳所有标签 下面是一个可重现的示例 library plotly plot ly type pie values 1 19 labels c 101 119 textinfo label v
  • 如果表中没有索引,如何配置 NHibernate 映射到数组?

    我有一个现有的 POCO 类库 其中子集合全部存储在数组中 例如 Customer 类有一个 Invoice 数组来保存其发票 class Customer public int ID public Invoice invoices cla
  • 整数宽度与位域声明相关吗?

    我试图找到一个不应该写的理由 struct bitfield signed foo 4 unsigned bar 2 而不是详细指定 struct bitfield signed int foo 4 unsigned int bar 2 由
  • 实现抽象方法时更改参数类型

    是否有某种方法可以将抽象类型定义为抽象方法中的参数 并且当在派生类中实现该方法时 可以更改该方法的类型以接受派生类型 Code public abstract class ProductBase public class SomeProdu
  • 将类似 facebook 的按钮与动态加载的内容集成

    我正在开发的网站包含通过 AJAX 动态加载的项目列表 当您向下滚动页面时 会加载更多项目 现在 我的客户想要为每个项目添加一个类似 Facebook 的按钮 以及喜欢此按钮的人数 集成默认的点赞按钮没有问题 但是如何将点赞按钮添加到通过
  • PackageManager.getComponentEnabledSettings() 在冷启动之间是否持续存在?

    如果我使用下面的代码禁用 AndroidManifest xml 中定义的静态 BroadcastReceiver 它会在重新启动后重新启用吗 似乎不是 但文档没有说明是否应该 final ComponentName compName ne
  • 计算R中表格每一行的线性趋势线

    是否有可能在不使用循环的情况下对数据帧的每一行进行线性回归 趋势线的输出 截距 斜率 应作为新列添加到原始数据框中 为了更清楚地表达我的意图 我准备了一个非常小的数据示例 day1 lt c 1 3 1 day2 lt c 2 2 1 da
  • Python Scrapy 和 Yield

    我目前正在第一次使用 Scrapy 开发爬虫 也是第一次使用 Yield 我仍在努力思考产量问题 刮刀 抓取一页以获取日期列表 解析 使用这些日期来格式化 URL 然后抓取 parse page contents 在此页面上 它找到每个单独
  • 使用 NSURLConnection 的自定义子类,它稍后如何“找到”类中的附加数据?

    这个博客提供了一个很好的解决方案来处理多个 NSURLConnections 创建一个自定义的 CustomURLConnection 类 它有一个额外的tag财产 http blog emmerinc be index php 2009
  • SharePoint 2010 文档库版本注释

    我想强制用户在签入文档之前添加评论 当用户选择签入时 会显示默认的弹出页面 以便选择版本和撰写评论 但评论字段不是必填字段 我们可以将其设为必填字段吗 你可以通过 EventReceiver 来做到这一点 public class Even
  • 使用 .htaccess 删除 .php 并重定向到其非 .php 版本

    我有一个网站 需要删除每个文件的 php 扩展名 然后将指向包含 php 扩展名的任何文件的任何链接重定向到同一文件 但不包含 php 我找到了以下代码 它非常有用 但是文件夹中包含的任何内容都将被重定向到根目录 如下例所示 http ww
  • 如何仅在 div 加载时运行函数?

    我只想在加载 div 时运行函数 当我加载页面时 会加载许多文件 在列表的末尾 PHP 回显一个 div 当显示这个时 jQuery 应该运行一个函数 我可以通过点击事件来完成此操作 但我希望它能够自动工作 而无需按下按钮 单击后 它的工作
  • 尝试了解 Pandoc 如何从 Markdown 转换为 Latex

    如果这是重复的话 我深表歉意 我有一个 Markdown 文件test md https www akshaygaur org test md它有两个乳胶数学模式部分 第一个乳胶块 在 md 文件中 begin flalign P 1
  • VScode:如何更改 HTML 打开和关闭标记的颜色

    如何更改 VScode 中 HTML 打开 关闭标签的颜色以匹配下图 我尝试过使用Highlight Matching Tag扩展名和以下设置 但这仅适用于选择 onFocus 标签 我希望开放标签的实际字体颜色与所有结束标签不同 谢谢你
  • 是否可以在不使用 ID 的情况下实现自增编号?

    我继续谷歌搜索并发现唯一的方法是使用 Id GeneratedValue strategy GenerationType Identity 但我已经有一个主键 我只需要另一个自动递增的字段 通过手动计算来编码确实很困难 我看到以下选项 1
  • iOS10 上的地址簿崩溃

    在 iOS10 0 中 从联系人选择器中选择联系人会使应用程序崩溃 联系人选择器显示使用ABPeoplePickerNavigationController像这样 let contactsPicker ABPeoplePickerNavig