使用Swift从iOS中的Realm读取会干扰Xcode调试器吗?

时间:2018-07-11 20:52:36

标签: ios swift xcode debugging realm

我有一个iOS应用程序,可以读取QR码,读取标签后,将使用Realm作为数据库对其进行处理。

使用Google Vision MLKit一切正常。

我正在迁移QR库以使用Apple Vision Framework,但遇到了奇怪的行为。

最初的症状如下: -读取并正确报告了QR码,因此无法继续处理扫描的标签。 (标记代码是常规的24个字节的字符串。使用Google Vision都可以正常工作)

我使用Xcode调试器进行了一些挖掘,这就是我要解决的问题(它似乎与Realm有关,但仅在使用Vision Framework时失败)。

这是时髦的代码,调试器在其中失败(并且鉴于这里是从Vision Framework处理程序接收标签处理的位置,我怀疑Vision处理程序的工作方式与Realm操作之间存在某种关系) :

print(tagNumber)
let result = self.realm.objects(BizObjects.self).filter("tagNumber = %@  AND deleted = 0", tagNumber)
print("Count: \(result.count)")
  • 此代码的第2行和第3行有断点。
  • 我扫描了一个QR码,并且正确报告了tagNumber(并打印在第1行中)
  • 一旦调试器在第一个断点处停止,我单击“ step”,然后忽略第二个断点,则不会执行tagNumber的处理,但是应用程序返回到可以再次扫描的位置。

我重新启动了Xcode,然后重新启动了Mac。还是一样的奇怪行为。

我正在使用Xcode版本9.4(9F1027a)和Swift 4.1

关于这里可能发生什么的任何想法?

0 个答案:

没有答案