サーバーから電子書籍をダウンロードし、SD カードにローカルに保存するアプリを作成しようとしています。電子ブックをダウンロードした後、DRM が電子ブックのセキュリティを処理します。しかし、その後、いくつかの理由により、DRM の概念から離れました。eBook を SD カードに安全に保存できるかどうか知りたいです。ユーザーは、ファイルを表示する以外の操作を行うことはできません。ユーザーがファイルをまったく表示できない別の場所にファイルを保存できますか。iOS ではバンドル内のファイルをダウンロードできますが、Android の場合???. pdf を BLOB ファイルとして DB に保存して、そこから読み取ろうとしました。その場合も、ファイルを書き込んでから読み取る必要があります。私はこの問題について本当に混乱しています。さらに先に進む方法について誰かが私に良いアプローチを提案できますか. どんな助けでも本当にかなりの価値があります。
4 に答える
ユーザーがファイルをまったく表示できない別の場所にファイルを保存できますか。
外部ストレージにはありません。本を内部ストレージに置くことができます。その場合、root 化されたデバイス ユーザーのみがアプリの外部で本にアクセスできます。
外部ストレージに保存されたファイルは、他のアプリケーションやユーザーの PC から簡単に読み取ることができます。誰にもアクセスされたくない場合は、ファイルを暗号化する必要があるかもしれません。適切に暗号化されたファイルは、システム内のどこにでも配置でき、読み取られるリスクはありません。
あなたのケースの内部ストレージにファイルを保存するのは良くないように思えます. 内部ストレージの量が限られているデバイスがまだ多すぎて、すべてのメガバイトがカウントされるからです.
i) あなたにとって重要なファイルを暗号化しておきます。
ii) ファイルを復号化し、実行時に内部ストレージに移動します。
iii) 内部ストレージからのみファイルにアクセスします。
これらのことに従うと、内部ストレージにのみアクセスできるため、ファイルとメソッドの呼び出しが安全に保たれます。例:(内部ストレージから移動したアセット ファイルにアクセスする) file:///android_asset/ => file:///data/data/com.test.exmple/files/"
これを透過的に行うquixxiなどのツールを試すこともできます。