通常我会在不终止的情况下使用print()方法进行调试,该方法会在Xcode日志上显示出来。但是,当应用程序终止然后重新打开时,我有一些条件需要在AppDelegate的didFinishLaunchingWithOptions方法中进行测试。 “重新打开”是指单击模拟器/ iphone上的应用程序,而不是再次从Xcode运行它。可悲的是,终止后没有显示打印日志。还有其他方法可以做到吗?谢谢!
答案 0 :(得分:2)
单击Xcode左上角“应用程序名称”附近的选项。
点击编辑方案->选中等待可执行文件启动选项,然后像往常一样运行。快乐编码:)。
答案 1 :(得分:1)
答案 2 :(得分:0)
在 Swift 4.2 中,
var paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
let documentsDirectory = paths[0]
let fileName = "\(Date()).log"
let logFilePath = (documentsDirectory as NSString).appendingPathComponent(fileName)
freopen(logFilePath.cString(using: String.Encoding.ascii)!, "a+", stderr)
只需在应用程序委托文件的
application:didFinishLaunchingWithOptions
方法中添加此代码块,它将在iPhone上的应用程序文档目录中创建一个日志文件,该日志文件记录所有控制台日志事件。您需要从iTunes
导入此文件以查看所有控制台事件。注意:在.plist文件中,请确保存在应用程序支持
iTunes file sharing
并将其设置为YES
,以便您可以通过iTunes
进行访问。要获取日志文件:在设备连接后启动
iTunes
选择应用程序-选择您的应用程序-在Augmentnt Document中,您将获得 文件。然后可以将其保存到磁盘上
答案 3 :(得分:0)
您可以尝试通过“ NSLog”打印日志。在Xcode上,转到“设备和模拟器”,然后选择您的设备。所有NSLogs都将在底部可见。