2017-06-13 10 views
0

私のアプリケーションに、将来の使用のために保存したい整数変数があります。その値に応じて(値が0の場合と同じように)、私は自分のアプリの機能をブロックし、同じもののアプリ内購入をリクエストします。androidの変数を固定する

私はそれを内部ストレージに保存すると、データの消去後にフラッシュされます。外部ストレージに保存すると、コードの逆コンパイルによってファイルのパスを簡単に見つけることができます。私の範囲外です。

私は完全な証拠のセキュリティはほとんど不可能であることを知っています。私の質問をd​​ownvotingすることを考えているかもしれませんが、私は本当に最大限のセキュリティを達成できるように、変数の値が改ざんされていることがわかります。この場合は、値をゼロにリセットします。

+0

すべてのユーザーのためのものであれば、firebaseリアルタイムデータベースを使用してください。firebase remote config – archLucifer

+0

データを消去すると、永続的なデータがすべて消去されます。サーバーインテグレーションで残したのは、アプリケーション条件を開始し、検証してください。 – Pavan

+0

はい、値は異なるユーザーのために異なります....だからfirebaseリアルタイムデータベースによれば、最良のオプション@archLuciferですか? –

答えて

0

私はあなたの機能を達成するために、次の手順を実行することができますので、サーバーの実装なしで変数を保護する方法がないと思う。

  • まず、App App Purchase製品のステータスを確認する必要があります。ユーザーが購入した場合は、次の機能のロックを解除する必要があります。

  • ユーザーがアプリ内購入で購入または購読していない場合は、次の機能をロックする必要があります。

+0

定期購入とアプリ内購入API - https://developer.android.com/google/play/developer-api.html#subscriptions_api_overview これが役立ちます。 –

0

保存されたデータを読み取りから保護したい場合は、暗号化を使用してファイルに何かを保存し、アプリケーションで使用することができます。はい、誰かがあなたのデータへの道を見つけることができますが、それを読むのは難しいでしょう。また、データを変更することも不可能です。壊れただけです。

一方、内部のストレージや環境設定を使用する方が効果的です。そして、実際には、アプリケーションデータをクリアすることでデータをクリアする必要があります。必要なフィールドがない場合は、アプリケーションの開始時にデフォルト値を作成して保存する必要があります。ユーザーがアプリケーションを削除するとデータが消去されると、デバイスに何も残ってはいけません。

関連する問題