LXLoggerを使用するデバイスやシミュレータのファイルにログエントリを書き込むことができます(xcodeコンソールなどに加えて)。 LXLoggerがファイルを保存するデフォルトの場所は、ApplicationSupportDirectoryの下にあります。iOSのApplicationSupportDirectoryから読む
LXLoggerはファイルに書き込みます。ファイルは私のデバイス(または私のMac HDD)にありますが、ファイルを開くときにファイルが存在しないと言われています。
コードに沿って生成されたエラーログを追加しました。
ここでは、さまざまな方法と複数の質問を試みましたが、無駄です。
let directory = NSFileManager.defaultManager().URLsForDirectory(.ApplicationSupportDirectory, inDomains: .UserDomainMask).first!.URLByAppendingPathComponent(NSBundle.mainBundle().bundleIdentifier!, isDirectory: true).URLByAppendingPathComponent("logs", isDirectory: true)
do {
let array = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(directory, includingPropertiesForKeys: nil, options:[])
var str = array[0].description
str = str.stringByReplacingOccurrencesOfString("file://", withString: "", options: .LiteralSearch, range: nil)
let fileURL = NSURL(fileURLWithPath:str)
log.info("fileURL contains: " + fileURL.absoluteString)
do {
log.info("Attempting to get contentsOfURL")
let data = try NSString(contentsOfFile: array[0].description,
encoding: NSASCIIStringEncoding)
logTextView.text = data as String
} catch let error as NSError {
log.error(error.description)
}
}
catch let error as NSError {
log.error(error.description)
}
ログを出力し、上記のコードから:
> 2016-03-31 21:43:52.121 [INFO] fileURL contains: file:///private/var/mobile/Containers/Data/Application/2F812C06-E204-4543-905C-F884C35DA198/Library/Application%2520Support/myname.myapp/logs/1_log.txt
> 2016-03-31 21:43:52.122 [INFO] Attempting to get contentsOfURL
> 2016-03-31 21:43:52.123 [ERROR] Error Domain=NSCocoaErrorDomain Code=260 "The file “1_log.txt” couldn’t be opened because there is no such file." UserInfo={NSFilePath=file:///private/var/mobile/Containers/Data/Application/2F812C06-E204-4543-905C-F884C35DA198/Library/Application%20Support/myname.myapp/logs/1_log.txt, NSUnderlyingError=0x1376e0e00 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
ので、コードは(と私は物理的に私のMac上のコピーを開くことができます)ファイルがあることを示しているが、このアプリはそれを見つけることができません。 おそらく私のファイルハンドル/ nsurl /そのようなものの私の使い方と何か関係がありますか?
とてもシンプルですぐに使えます。ありがとう:) –
私は助けることができてうれしい! – jtbandes
@mad_dogこれがあなたの質問に答えた場合は、投票矢印の左にあるチェックマークをクリックして、それを合格とマークしてください。ありがとう! :) – jtbandes