背景
我有一个相当详细的(大约 2000 行 swift 代码)自动化框架,它是用 Xcode 7.3 和 Swift 为我们的 iOS 应用构建的。
直到最近,我才能够使用 lldb
来构建我的框架,即
- 插入断点并运行代码直到该点
- 使用
po XCUIApplication().debugDescription
和expr bla bla
构建逻辑 - 重复
问题
几乎是突然之间,每当在 lldb
的控制台中运行任何内容时,我现在都会遇到以下错误:
(lldb) po XCUIApplication()
error: <EXPR>:2:1: error: 'XCUIApplication' is only available on iOS 9.0 or newer
XCUIApplication()
^
<EXPR>:2:1: note: add 'if #available' version check
XCUIApplication()
^
<EXPR>:2:1: note: add @available attribute to enclosing instance method
XCUIApplication()
^
<EXPR>:2:1: note: add @available attribute to enclosing extension
XCUIApplication()
^
<EXPR>:10:9: warning: initialization of variable '$__lldb_error_result' was never used; consider replacing with assignment to '_' or removing it
var $__lldb_error_result = __lldb_tmp_error
~~~~^~~~~~~~~~~~~~~~~~~~
注意事项
谷歌搜索和研究并没有让我有任何重要意义。 我发现的一个相关线程在 fastlane project 中。 .与那个评论不同,我的是一个 UI 测试目标。 此外,测试目标的“iOS 部署目标”设置为 iOS 9.2(以防有帮助)。
- 就我的内存而言,我最近没有做任何重大改变。
- 我的设备是(并且一直是)iOS 9+。
可能出了什么问题?
2016 年 5 月 20 日更新
基于以下答案的一些探索:https://stackoverflow.com/a/37335950/682912
- 此问题仅在真实设备上发生。模拟器不会面临这个问题。
- 在真实设备(iPhone 6S+、iOS 9.2.1)上,我完全重置了内容和设置。这并没有解决问题。
最佳答案
这是您设备上安装的调试代理中的错误。这些是与 iOS 版本绑定(bind)的,所以它可能是在您升级设备时发生的。无论如何,请使用 http://bugreporter.apple.com 提交错误.
如果我对这个问题的看法是正确的,那么它应该只发生在对设备进行调试时,而不是在模拟器上。这可能会让您有一个临时的解决方法,直到错误得到修复。
关于ios - Xcode 用户界面测试 : lldb error "only available on iOS 9.0 or newer",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37320606/