我正在iOS 14上开发WidgetKit扩展,但是,该扩展在构建和运行后并不总是连接到Xcode调试器,导致我看不到日志,如下图所示:(但有时会自动连接,我不知道为什么)
如果扩展附加到调试器,它应该如下所示,并打印日志:
手动将进程附加到调试器不起作用,应在首次启动时附加以查看日志。有人知道如何正确调试iOS 14小部件吗?
lxkprmvk1#
Xcode 14.1发行说明似乎提到了一个已知问题在运行一个小部件扩展后,用户需要手动启动调试会话,调试-〉附加到进程。(99285608)
1.选择应用方案并在iOS设备上运行(不要停止)
Debug
Attach to Process
现在,您的断点应该如预期那样工作,您可以调试
uyhoqukh2#
试着插入你的物理设备并在上面运行它,而不是在模拟器上。这就为我解决了日志问题。
ifmq2ha23#
要调试或查看打印信息:(这对我很有效)在Xcode的左上角-〉点击项目名称,可以看到一个列表,选择widgetname,运行它点击小部件名称,可以看到一个列表,选择项目名称,运行它Xcode:版本12.3,iPad:iPad操作系统14.3
xsuvu9jc4#
您可以在本地文件中记录您的有用信息,就像这样:
public func XXLogToFile(_ text: String) { if let documentsDirectory = FileManager().containerURL(forSecurityApplicationGroupIdentifier: "group.xxx") { let logFileUrl = documentsDirectory.appendingPathComponent("log.txt") do { var logContent = try String(contentsOf: logFileUrl, encoding: .utf8) logContent = (logContent.count > 0 ? "\(logContent)\n\(text)" : text) try logContent.write(to: logFileUrl, atomically: false, encoding: .utf8) } catch {} } }
4条答案
按热度按时间lxkprmvk1#
Xcode 14.1已知问题:
Xcode 14.1发行说明似乎提到了一个已知问题
在运行一个小部件扩展后,用户需要手动启动调试会话,调试-〉附加到进程。(99285608)
进近(在模拟器和器械上工作)
步骤
1.选择应用方案并在iOS设备上运行(不要停止)
Debug
〉Attach to Process
〉选择微件目标名称注:
现在,您的断点应该如预期那样工作,您可以调试
uyhoqukh2#
试着插入你的物理设备并在上面运行它,而不是在模拟器上。这就为我解决了日志问题。
ifmq2ha23#
要调试或查看打印信息:(这对我很有效)
在Xcode的左上角-〉
点击项目名称,可以看到一个列表,选择widgetname,运行它
点击小部件名称,可以看到一个列表,选择项目名称,运行它
Xcode:版本12.3,iPad:iPad操作系统14.3
xsuvu9jc4#
您可以在本地文件中记录您的有用信息,就像这样: