今日、PhoneView アプリのデモ版をダウンロードしました。驚いたことに、この PhoneView アプリを使用して Documents/Library フォルダーにあるファイルの内容を変更できます。
ユーザーがアプリ内のファイルにアクセスするのを制限し、これらのファイルをこれらのサードパーティ ツールから見えないようにしたいですか? それを達成する方法はありますか?
今日、PhoneView アプリのデモ版をダウンロードしました。驚いたことに、この PhoneView アプリを使用して Documents/Library フォルダーにあるファイルの内容を変更できます。
ユーザーがアプリ内のファイルにアクセスするのを制限し、これらのファイルをこれらのサードパーティ ツールから見えないようにしたいですか? それを達成する方法はありますか?
ファイルへのアクセスを制限することはできません。ただし、他のユーザーがファイルを表示できないようにする場合は、ファイルを暗号化できます。これは役に立つかもしれません (CommonCrypto の部分)。暗号化キーを生成し(これに使用できると思いますCFUUIDCreate
)、アプリのキーチェーンに保存する必要があります。
PhoneView および同様のアプリは、iOS デバイスのファイル システムにアクセスできる範囲で直接アクセスします。これは iTunes と同じです。そのため、デバイス上の iTunes でアクセス可能なすべてのメディアを参照および変更できます。アプリ、およびそれらが作成するすべてのデータ。
基本的に、彼らがあなたのアプリ データを見るのを防ぐ方法はありません。なぜなら、彼らは可視性キーを無視し、ファイル システムにあるすべてのものをリストするだけだからです。
したがって、デバイスのファイル システムの内容を詮索するユーザーからアプリのデータをどうしても隠したい場合は、すべてのファイルを判読できない形式にエンコードする必要があります。そうすれば、ユーザーは引き続き変更や削除を行うことができます。データですが、それを理解することはできません。
簡単な回答:これを防ぐためにできることはあまりありません。アプリのデータをそのままにしておくことを強くお勧めします。
おそらく唯一の方法は、他の人に見られたくないファイルをエンコードおよびデコードすることです。iOS の Documents フォルダーは、OS x の Documents と同じで、すべてのアプリまたはユーザーが読み取ることができます。