Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift Try Catch的Crashlytics日志记录_Ios_Swift_Crashlytics - Fatal编程技术网

Ios Swift Try Catch的Crashlytics日志记录

Ios Swift Try Catch的Crashlytics日志记录,ios,swift,crashlytics,Ios,Swift,Crashlytics,我面临着一个奇怪的问题,Crashlytics在try-catch块中记录捕获的异常。 下面是一些示例代码: do { try managedContext.save() // Exception!!! } catch let error as NSError { error = error print("Could not save \(error), \(error?.userInfo)"

我面临着一个奇怪的问题,Crashlytics在try-catch块中记录捕获的异常。 下面是一些示例代码:

        do {
            try managedContext.save() // Exception!!!
        } catch let error as NSError {
            error = error
            print("Could not save \(error), \(error?.userInfo)")
        }
try-catch块应该可以防止崩溃,但是Crashlytics会将这一行记录为一个问题(而不是非致命问题)。这怎么可能

一些背景信息:

  • managedContext
    对象的类型为
    NSManagedObjectContext
    ,由AppDelegate(用Objective-C编写)初始化
  • 我使用的是最新版本的Fabric-2.3.0

  • 发生什么事了

    Swift try catch块用于Swift错误,而不是objective-c异常。您无法从Swift捕获objective-c异常,但这一行是Swift代码。您建议我如何处理此问题?取决于例外情况是什么—这是一个核心数据迁移失败。“致命异常:NSInternalInconsistencyException此NSPersistentStoreCoordinator没有持久存储(架构不匹配或迁移失败)”。我的目标是捕获该行(Swift)触发的任何可能的异常-我仍然不理解底层Objective-C互操作是如何一个问题。您需要修复导致异常的底层错误,或者在Objective-C中编写该代码。如果使用Swift,则无法捕获异常。Swift try catch块用于Swift错误,而不是objective-c异常。您无法从Swift捕获objective-c异常,但这一行是Swift代码。您建议我如何处理此问题?取决于例外情况是什么—这是一个核心数据迁移失败。“致命异常:NSInternalInconsistencyException此NSPersistentStoreCoordinator没有持久存储(架构不匹配或迁移失败)”。我的目标是捕获该行(Swift)触发的任何可能的异常-我仍然不理解底层Objective-C互操作是如何一个问题。您需要修复导致异常的底层错误,或者在Objective-C中编写该代码。如果使用Swift,则无法捕获异常。