私は、ユーザーがファイルマネージャを使用してディレクトリとファイルを作成、変更、削除できるアプリケーションを持っています。私は、外部アプリケーションからファイルをインポートするときに、システムフォルダInbox
が自動的に生成され、ユーザがフォルダを削除したり、Inbox
という名前のフォルダを作成したりするのを防ぐことができます。代わりに、ドキュメントパスディレクトリにサブディレクトリを作成し、ファイルマネージャがそのフォルダをドキュメントルートパスと見なすべきですか?他のアプリはどのようにこれを達成していますか?ユーザーがフォルダとファイルを管理できるようにするには、ドキュメントディレクトリ内の受信トレイフォルダをどうすればいいですか?
答えて
ユーザーがサンドボックスのドキュメントディレクトリ内に独自のドキュメントとディレクトリを作成できるようにする場合は、提案したことを実行してドキュメント内にユーザー編集可能データ用に指定される別のディレクトリを作成するとよいでしょう。
たとえば、ドキュメント内に「User」ディレクトリを追加し、それをユーザーファイルとディレクトリのルートディレクトリとして使用します。
アプリが外部のエンティティで開くように頼まれたファイルにアクセスするには、このディレクトリを使用します。
Appleのドキュメントには、については、次/書類/受信トレイを述べています。具体的には、メールプログラムは、このディレクトリにあなたのアプリに関連付けられている電子メールの添付ファイルを配置します。ドキュメントインタラクションコントローラは、ファイルをその中に配置することもできる。 あなたのアプリはこのディレクトリ内のファイルを読み書きできますが、新しいファイルを作成したり既存のファイルに書き込むことはできません。ユーザーがこのディレクトリ内のファイルを編集しようとすると、アプリケーションは変更を加える前にディレクトリから静かに移動する必要があります。 このディレクトリの内容はiTunesによってバックアップされます。
これは妥当な答えですが、最も洗練された解決策ではありません。ドキュメントディレクトリに偽の "chroot"刑務所を作らなければならないと思いますか? –
それはそれについて行く方法の1つだと思います。おそらく、新しいルートディレクトリのパスまたはURLを返す独自の関数を作成し、ドキュメントディレクトリへのパスを返すシステム関数ではなくパス/ urlを取得するコードで使用することもできます。 –
はい、それは私が現在実装しているものです。あなたのご意見ありがとうございます。おそらく、Appleは今後この問題に対処するだろう。ドキュメントを引用するための+1 –
- 1. ユーザーが管理者ページにアクセスしないようにするにはどうすればよいですか?
- 2. ライセンス管理(.lic)ファイルは、自分のbinフォルダにソース管理の対象となるように含めるにはどうすればいいですか?
- 3. cssファイルを管理するにはどうすればよいですか?
- 4. ユーザーがアップロードしたファイルを管理するにはどうすればよいですか?
- 5. ユーザーがC#でファイルを参照できるようにするにはどうすればよいですか?
- 6. クロムでサービスワーカーを管理するにはどうすればよいですか?
- 7. AFNetworkingでセッションを管理するにはどうすればよいですか?
- 8. ETLでアイデンティティを管理するにはどうすればよいですか?
- 9. Xcodeでコードスニペットを管理するにはどうすればよいですか?
- 10. プログラムでloginViewControllerを管理するにはどうすればよいですか?
- 11. NettyでLogRecordを受信するにはどうすればよいですか?
- 12. 各ユーザーに固有の長い配列を管理するにはどうすればよいですか?
- 13. 管理者ユーザーだけがアクセスするプロパティを許可するにはどうすればよいですか?
- 14. SlashDBでユーザーセッション管理を行うにはどうすればよいですか?
- 15. ユーザーを管理者と出席者に分割するにはどうすればよいですか?
- 16. Facebookのアクセストークンを管理するにはどうすればよいですか?
- 17. ブートストラップコードのリポジトリを管理するにはどうすればよいですか?
- 18. 電報ボットでもっと多くのユーザーを管理するにはどうすればいいですか?
- 19. Android - ユーザーがアクセスできないフォルダを作成するにはどうすればよいですか?
- 20. Yii2ユーザー:管理ユーザーをバッチモードで作成するにはどうすればいいですか?
- 21. リンクを自動管理するにはどうすればよいですか?
- 22. ユーザークレームを管理するにはどうすればよいですか?
- 23. TCLプロシージャを管理するにはどうすればよいですか?
- 24. AZURE RAMを管理するにはどうすればよいですか?
- 25. マニフェスト内のサービス内で受信者を宣言するにはどうすればよいですか?
- 26. アプリケーションのソース管理でPythonのバージョンを管理するにはどうすればよいですか?
- 27. ユーザーがタグでEC2を管理できるようにする
- 28. RxJavaでDialogFragmentを管理するにはどうすればいいですか?
- 29. ViewWillDisappearでコードを管理するにはどうすればいいですか?
- 30. 1人のAndroidアプリで複数のユーザーを管理するにはどうすればよいですか?
私はそこにベストプラクティスがあるとは思わない。あなたにとって最も理にかなったことをやってください。私は単にInboxを無視し、ファイルのリストを取得するときにそれをフィルタリングします。あなたが提案したようにサブディレクトリを使用することも確かに良い解決策になります。 –
@MattLongうーん。 Appleのファイルシステム設計に疑問をぶつける前に、そのフォルダがドキュメントパスで作成され、最初にアプリケーションユーザーに見えるようにする理由を疑問に思う必要があります。デザイン上の欠陥か、Inboxフォルダを置くことに何らかの利点があることは明らかです。 –