Я использую AESObfuscator в ServerManagedPolicy для лицензирования android. До сих пор я создал DeviceId так:AESObfuscator для Android Licensing
String deviceId = Secure.getString(getContentResolver(), Secure.ANDROID_ID);
Во всех примерах в Интернете это делается, как это, но иногда утверждается, что это не очень безопасно, но нет другого пути нет описано. Я прочитал, что ANDROID_ID может быть легко изменен или даже может быть нулевым, поэтому я действительно хочу иметь другой способ получить уникальный идентификатор. Лицензия не удалась более одного раза для тех, кто купил мое приложение, и я уверен, что это связано с этим, иначе это может быть проблемой только с Google, что я действительно сомневаюсь.
Так как я могу это сделать? Просто создайте случайный хэш и добавьте его в deviceId (и, конечно, сохраните его где-нибудь ..?)
Извините, пожалуйста, об этом 6 лет спустя, но в чем же смысл AESObfuscator? Правильно ли я думаю, что файл salt, deviceId и sharedprefs можно получить через корневое устройство и dex2jar/декомпиляцию? Все дело в этом, просто для того, чтобы замедлить хакера, а не остановить их полностью? –