gpt4 book ai didi

objective-c - 更新到 macOS 后出现关于 "dynamic accessors failing"的未知错误

转载 作者:太空狗 更新时间:2023-10-30 03:22:07 26 4
gpt4 key购买 nike

升级到 macOS Sierra (10.12) 和 Xcode 8.0 (8A218a) 后,我开始在我的 macOS/Cocoa 应用程序(用 Objective-C 编写)中收到许多遵循以下格式的错误消息:

[error] warning: dynamic accessors failed to find @property implementation for 'uniqueId' for entity ABCDInfo while resolving selector 'uniqueId' on class 'ABCDInfo'.  Did you remember to declare it @dynamic or @synthesized in the @implementation ?

[error] warning: dynamic accessors failed to find @property implementation for 'uniqueId' for entity ABCDContact while resolving selector 'uniqueId' on class 'ABCDContact'. Did you remember to declare it @dynamic or @synthesized in the @implementation ?

[error] warning: dynamic accessors failed to find @property implementation for 'uniqueId' for entity ABCDEmailAddress while resolving selector 'uniqueId' on class 'ABCDEmailAddress'. Did you remember to declare it @dynamic or @synthesized in the @implementation ?

[error] warning: dynamic accessors failed to find @property implementation for 'address' for entity ABCDEmailAddress while resolving selector 'address' on class 'ABCDEmailAddress'. Did you remember to declare it @dynamic or @synthesized in the @implementation ?

这些都不是我的代码或来 self 正在使用的第 3 方开发人员库的代码,并且对这些变量名称(即“uniqueId”或“ABCDInfo”)进行搜索不会提取任何内容,表明它不是在我的项目中。

我看到这个问题在 Apple 的开发者论坛上也有两次报告(Issue 1Issue 2),但是这两个问题都没有得到解答

我的问题是:出现这些错误消息的原因是什么,我该如何解决?它不会导致我的应用程序崩溃,但我宁愿找出并理解问题所在。

最佳答案

首先让我们检查一下@synthesize 和@dynamic 是什么:

  • @synthesize 将为您的属性生成 getter 和 setter 方法
  • @dynamic 告诉编译器 getter 和 setter 方法不是由类本身实现的,而是在其他地方实现的(比如父类(super class)或将在运行时提供)

联系人现在要求任何使用邮件/联系人框架的人都需要使用 uses-contacts 权利进行代码签名。

您需要通过授予“联系人访问权限”权利来对您的应用进行沙盒处理。警告仍将被记录下来,但这与 XCode 8 的另一个错误有关,该错误记录了很多无用的东西。

Apple 似乎将不再接受非沙盒应用访问联系人(或位置或日历)。

要将您的应用沙盒化,请执行以下操作:转到您的项目设置 > 选择您的应用 > 启用 App SandBox,然后选择您正在使用的应用数据。

关于objective-c - 更新到 macOS 后出现关于 "dynamic accessors failing"的未知错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39736718/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com