SQLite db ファイル、共有環境設定などのアプリケーション データへのアクセスをユーザーに制限することができます。ファイルなど 私はそれを特定のレベルに制限しました。ただし、root ユーザーまたはスーパー ユーザーとしてデバイスを起動すると、ユーザーはこれらのファイルにアクセスできます。
ユーザーが私の安全なアプリケーション データにアクセスするのを制限するには、何をする必要がありますか?
どこかでブログを見たことがありますが(見つけられたらリンクを取得します)、基本的にあなたにできることは何もありません。ブログの著者は、あなたがユーザーのデバイスに置いたデータはすべてそのユーザーのものであり、彼らがそれを十分に望むなら、彼らはそれを手に入れるだろうと言っています. root ユーザーは、デバイス上のすべてにアクセスできます。それが、root化が行うべきことです。
データを本当に保護する唯一の方法は、保護されたサーバーからデータを取得し、キャッシュしないことです。これは、ユーザーから何かを守りたい場合に行うべき唯一の方法です。
「それはユーザーのデータだ、くそっ」という適切なタイトルのブログ投稿を見つけました。 http://commonsware.com/blog/2012/05/01/its-the-users-data-dammit.html
あなたは本当にこの男のブログを購読するべきです。彼はそこにいくつかの良いものを持っています。(いいえ、私は差し込んでいません。私はこの男になりたいです。)
電話がルート化されている場合、デバイスに保存されているファイルへのアクセスを停止するためにできることはほとんどありません.
最善の方法は、ユーザーがアプリを起動するたびに入力する必要があるキーを使用して、ファイルまたはデータベースのフィールドに書き込まれるデータを暗号化することです。