iPhoneのファイルの仕組み

2025-01-11

iPhone

参考情報
  1. File System Basics
    appleの公式の説明(英語)
  2. iPhoneが採用している「サンドボックス」とは?基本的な仕組みや重要な理由を解説
  3. 今こそ復習したい、iOSアプリのディレクトリ構成
    1の内容の翻訳に近いが、今回私が知りたかった事の再需要項目であるサンドボックスの書かれてない。そのため、理解に余計時間がかかった気がする…
関連記事
関連記事1に書いたように、今更ながら初めてiPhone(iOS)を使っている。でよくわからなくなったのがファイルの仕組み(ファイルシステム)。どこにファイルがあるのかわからないし、こっちのアプリで見たファイルが、別のアプリでは見えないなど(正確にはよく覚えてないけど)。
iPhoneユーザーには当たり前なのかもしれないが、どうもわかりやすく説明しているものがなかなか見つからなかった。
愚痴になるが、iPhoneのアプリには、一般名詞そのままの名前のが多くて、検索した時に意図しない方がひっかかって調べにくい。具体的には標準アプリの「ファイル」。ファイルの仕組みを調べようとしたらアプリばっかり引っかかってきて困った。他にも「Documents」。「ファイル」と同じようなアプリだが、iPhoneのユーザーファイルのフォルダ名と同じ。「ショートカット」も。アプリの事を言ってるのか、一般的な(IT的な)意味でのショートカットを言ってるのかわからない。

話はそれたが、ファイルの仕組み(内容があるのはここだけ)。私の現在の理解なので間違ってたらごめんなさい。なお、私の環境は、iPhone15, iOS 18.1.1
  • ファイルは、アプリ毎に作られたサンドボックス内にある
    そのため、あるアプリで作ったファイルは、原則他のアプリからは見えない。サンドボックスの詳細はよく知らないけど、アプリ毎に環境を分けて、何かイレギュラーな事があっても、システムや他のアプリに影響を与えない(与えにくく)するものという事のようだ
  • 他のアプリでファイルを使うためには、"共有"する必要がある
    共有というと、他のユーザーやクラウド等と共有する事かと思っていたが、アプリ間にも共有という概念がある。

まだよくわからないこと(推測)
  • 「ファイル」というアプリは特別?
    ブラウズ→場所/このiPhone内を見ると、他のアプリ名のフォルダがあり、その中には他のアプリが作ったと思われるファイルがある。
    サンドボックスの外にある?他のアプリに共有されるサンドボックス?他のアプリのサンドボックスを自由に覗ける?
    設定→プライバシーとセキュリティ→ファイルとフォルダを見ると、いかにも汎用にファイルにアクセスしたさそうなアプリが並んでいる。私の現状の場合、"a-Shell mini","Carnets","Documents","ショートカット"。でもそこには「ファイル」はない。そもそも「ファイルとフォルダ」というのが、実は「ファイル」アプリの事を指してるとか?
  • このiPhone内とは?
    ファイル→ブラウズ→場所には、このiPhone内に並列して、いくつかのアプリ(Documents、TeamViewer、(google)ドライブ)が並んでいる。これはそれぞれのアプリのサンドボックス内のファイルを見ている気がする。
    一方(前述したように)、ファイル→ブラウズ→場所/このiPhone内には、他のアプリが作ったと思われるフォルダ(具体的には、"Geo Tracker", "iOSに移行", "ヤマレコ")がある。
    どう使い分けられてるの?サンドボックスの外のフォルダ?共有されるサンドボックス?
  • 写真(と動画?)ファイルは扱いが違う?カメラロール(写真ライブラリ?)という特別なところにあるっぽい…
    いろいろ検索してる時に、そんなことを書いてる人がいたなぁというレベルだが、「フォルダ」アプリには写真は出てこない、「Documents」アプリにそのサンドボックス内と写真ライブラリが出てくる等、それっぽい現象はある
  • 共有
    共有できるアプリとできないアプリがある。ファイルの内容によるのか、アプリの種類によるのか…
詳細は、参考情報1,2(,3)を参照してください。

ついでだが、PCとiPhoneのファイルやりとりは、いろいろ試して、「Documents」アプリの"コンピュータに接続"を使う事にした。おなじWiFi(ルーター)につながっているPCからブラウザでアクセスできる仕組み。これも「Documents」アプリのサンドボックス内と写真ライブラリしかアクセスできないっぽいので、他のアプリで使いたいときは、iPhoneで共有するのかな…

セキュリティー的にはいい仕組みなんだろうけど、私のような中途半端な知識だけどちょっと複雑な事をしてみたい人にはややこしい…。