情報を難読化するためのキーを生成しています。
そのキーはデバイス間で変更する必要があるため、私が使用していた世代では次のようになります。
Secure.getString(getContentResolver(), Secure.ANDROID_ID)
TelephonyManager.getSimSerialNumber()
TelephonyManager.getDeviceId()
- 上記のすべてのオプションが有効な場合に生成されるランダム永続文字列
null
しかし、テストしたところ、デバイスの SIM によってTelephonyManager.getSimSerialNumber()が変更されるため (機内モードでは常に null が返されるため)、キーも変更され、難読化されたデータを復元できないことがわかりました。
私の質問は次のとおりです: TelephonyManager.getDeviceId()は常に同じ値を返しますか (null または値ですが、常に同じ結果になります)?
注:テストしたところ、「機内モード」でも有効な値が返されました