シミュレータでファイルを移動したりした結果を確認するために、Documentsディレクトリを見る必要がある場合がある。
しかし、最新のシミュレータではアプリがインストールされているディレクトリが変更されているようだ。

以前は
/Users/UseName/Library/Application Support/iPhone Simulator/7.1/Applications/5C022F1A-F8AF-453B-9B30-52C16B41A841/Documents
のようなパスだったが、前回記事で作成したサンプルは
/Users/UseName/Library/Application Support/iPhone Simulator/7.1/Applications/
にはどこにも見当たらない。

今回はその謎に迫ってみる。
 
ファイルを移動する処理を行う
前回記事の最後にファイルをダウンロードするところまで行った。
なので、今回はそのファイルをDocumentsディレクトリに移動させてみよう。

前回記事
[iOS] NSURLSessionで通信を行う [Swift版]

ダウンロードが完了した場合の処理に以下のように変更を加える。

1.ファイルマネージャを準備する

2.移動先のパスを作成する。
 今回はDocumentsディレクトリにtest.mp4という名前で移動する。

3.パスをURLにする。

4.パスを出力する。

とりあえず、これで実行してみると以下の様なパスが出力される。
/Users/UserName/Library/Developer/CoreSimulator/Devices/B608636A-****-****-****-************/data/Containers/Data/Application/334D4CFF-****-****-****-************/Documents/test.mp4
赤字の部分は環境によって変わるので注意して欲しい。

随分と深い位置にあるのでアクセスするのが少々面倒なので、適当なディレクトリにタグを付けておくようにしたい。

さて、ではファイルの移動処理を行ってみよう。
先ほどのprintln()の下に以下のコードを追加する。

同名のファイルが存在する場合はそれを削除し、新たに移動を行うようにしている。

実行してFinderで確認してみると、ちゃんとファイルがコピーされているのが確認できた。