如何解决更新到swift 3后运行时崩溃的问题



我刚刚更新到Xcode 8 (swift 3)。转换代码等。没有错误。一些构建警告…这应该不成问题。

当我在连接IPHone的情况下运行时,它因Thread 1: signal SIGABRT而崩溃。除了

之外,它几乎没有其他跟踪内容。
0_abort_with_payload
5 _dyld_start

和控制台错误是

dyld: could not load inserted library '/Developer/usr/lib/libBacktraceRecording.dylib' because no suitable image found.  Did find:

    /Developer/usr/lib/libBacktraceRecording.dylib: code signature invalid for '/Developer/usr/lib/libBacktraceRecording.dylib'

我有同样的错误,因为升级到xcode 8 (swift 3)。修复,对我来说,是在info.plist

中添加一个条目。

添加麦克风的权限信息:

    开放info.plist
  1. 添加一个名为"隐私-麦克风使用说明"的新密钥
  2. 输入一个字符串,描述为什么应用程序需要麦克风访问

重启你的iPhone设备。

它主要崩溃是因为你必须在info中写一些隐私的东西。如果你使用的是相机、图库等硬件,请选择Plist。查看控制台的详细信息,并在info中添加您正在使用的所有内容。应用程序列表

我也遇到过同样的问题,最后终于解决了。我在Swift 3中创建了一个框架,然后将其添加到我的一个其他项目中。我将它添加到的这个项目同时使用Swift和Objective-C,但最初是一个Objective-C项目。由于某些原因,在Swift 3中制作的框架导致我的应用程序在iPhone上运行时立即崩溃。我删除了框架,现在它运行良好。同样,不确定为什么会发生这种情况,因为框架之前在应用程序上运行良好,在模拟器上运行良好。所以我猜这和用最新的XCode和Swift 3创建的框架有关。也许其他人能解释清楚。希望这对大家有所帮助!

最新更新