説明書を読まなくても使い方がわかるのが、iPhoneの魅力であり強みです。しかし、知っているつもりでも正しく理解していないことがあるはず。このコーナーでは、そんな「いまさら聞けないiPhoneのなぜ」をわかりやすく解説します。今回は、「どうして他のアプリで作成/保存した書類を開けないの?」という質問に答えます。

***

iOSでは、アプリを安全に実行するために「サンドボックス」と呼ばれるしくみを用意しています。サンドボックスは文字どおり"砂場"のような閉じられた環境で、外部にアクセスすることは許されません。これで悪意を持ったプログラムがシステムや他のアプリを勝手に書き換えることは不可能になるため、アプリの安全な実行環境ひいてはiOS全体のセキュリティにつながります。

サンドボックスでは、アプリごとに「コンテナ」と呼ばれるディスク領域が割り当てられます。パソコンでいうところのフォルダであり、アプリは作成した書類や各種データを専用のコンテナに保存します。コンテナもサンドボックスの範囲に含まれますから、他のアプリからアクセスすることは許されません。これが、アプリAで作成した書類をアプリBで開けない理由です。

例外的な存在として、iPhoneで撮影した写真が保存される「カメラロール」、住所氏名やメールアドレスといった個人情報が保存される「連絡先」があります。これらは一種のシステム領域で、初めて起動したときにアプリから要求が出され、ユーザがそれを許可したときにかぎりアクセスが許されます。

ところで、今年の秋に公開予定の「iOS 8」では、オンラインディスクストレージサービス「iCloud Drive」が追加されます。アプリのサンドボックス構造もコンテナのしくみも変わりませんが、iCloud Driveに文書を保存しておくことにより、アプリ間で文書をやり取りすることが容易になります。

サンドボックスの概念図。アプリは周囲と隔絶された"砂場"の上で動作し、他アプリの領域にアクセスできませんが他のアプリにアクセスされることもありません