2016-12-16 9 views
-1

Xcode8/Swift3/iOS10のdocumentDirectoryは、フレームワーク上で、iOS上に書き込めないようです。iOS10 + Xcode8 documentDirectory奇妙な振る舞い

APIの使用/試した:私は、返されたURLにファイルを書き込むしようとするたび

FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) 

NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true) 

、今

(最後のものは、私が理解することができた、スウィフトに好まれていないようです)この分野で私はそうすることができないようです(シミュレータとデバイスの両方)。コンテナをダウンロードしたり、それを調べてもファイルは表示されません(いくつかの書き込み方法を試しました)。また、書き込むディレクトリを作成しようとすると失敗するようです。

奇妙なことは、使用しているAPIやFileManager自体からエラーが返されていないことです。

私は行方不明な点がありますか?報告すべきバグですか?現在、ライブラリ/ディレクトリの作成に移っていますが、ライブラリ/キャッシュ/と同じように揮発性ではないはずです。

コードは(私はこれを行うことを決めた前realm.ioを使用した)書き込みに使用:

let URLs = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) 
let data = Data.random(32) // Generates a 32 byte long random blob 
try! data.write(to: URLs.last!) // Crashing here with a forced unwrap is fine 
+0

最初のものは、2番目のパスである –

+0

@LeoDabusはいですが、これらのAPIに続くコードでは、これを処理しています。しかし、持ち出す良い点。たとえば、アプリケーションのサポートにアクセスすると、迷惑です。 –

+1

ディレクトリに書き込むために使用しているコードを表示できますか? – retainCount

答えて

0

シミュレータを完全にリセットしてXcodeを再起動する必要があります。面白いもの。

0

あなたが書いているパスが無効である - あなたの代わりにディレクトリパスを渡しています作成するファイルへのパス。

let path = NSString(string: URLs.last!.path).appendingPathComponent("foo.txt") 
+0

あなたの入力と時間をいただきありがとうございます、しかし、私はこれをやってみましたが、それは多くの助けにはならないでしょう、file://部分以外の両方のパスは完全に同じ文字です。実装後のコンテナ:https://www.dropbox.com/s/rj8hufkc0yb9lx6/Screenshot%202016-12-17%2001.54.59.png?dl=0 –