iOSの標準アプリ「ファイル」アプリ内に自分のアプリのフォルダを表示させるには、JSONファイルの保存先を .documentDirectory に設定した上で、プロジェクトの Info.plist(またはターゲットの Info タブ)に2つのキーを追加する必要があります。
1. Info.plist に追加する設定
Xcodeでプロジェクトを開き、ターゲットの「Info」タブ、または Info.plist に以下の2つの設定を追加して値を YES にしてください。
| キー名(Xcode上の表示) | キー(生テキスト) | 値 |
|---|---|---|
| Application supports iTunes file sharing | UIFileSharingEnabled | YES |
| Supports opening documents in place | LSSupportsOpeningDocumentsInPlace | YES |
※この設定を行うことで、ユーザーが「ファイル」アプリからフォルダ内のJSONを直接閲覧・編集できるようになります。
2. コード側の条件(保存先)
JSONファイルを保存する際、前回の引数解説にあった .documentDirectory を指定してファイルを保存している必要があります。
// 保存先のURLを作成する例
guard let documentsURL = FileManager.default.url(
for: .documentDirectory, // 必ずドキュメントディレクトリを指定
in: .userDomainMask,
appropriateFor: nil,
create: true
) else { return }
let fileURL = documentsURL.appendingPathComponent("data.json")
// この fileURL に対して JSON を書き込む
3. 「ファイル」アプリでの確認手順
アプリを実行し、実際にJSONファイルが1つ以上保存された状態で以下の手順を踏みます。
- iOS端末の 「ファイル」アプリ を開きます。
- 「ブラウズ」タブから 「このiPhone内」(またはこのiPad内)をタップします。
- あなたの 「アプリ名」のフォルダ が自動生成されているので、そこを開くと保存したJSONファイルを確認できます。
設定やコードの書き方でうまくいかない部分があれば教えてください。
- Info.plistの編集方法がわからない
- 保存したはずなのにファイルアプリにフォルダが出現しない
- JSONをファイルに書き出すSwiftUIのコードが知りたい