Согласно сети, наиболее рекомендуемый метод для генерации уникального идентификатора - это использование Settings.Secure.ANDROID_ID. Однако в файле Settings.Secure.ANDROID_ID есть ошибка на Android 2.2. Я использую Android 2.2, поэтому я не могу его использовать. С другой стороны, есть также MAC-адрес устройства Wi-Fi и TelephonyManager.getDeviceId (). Идентификатор, который я буду генерировать, будет использоваться в качестве идентификатора сеанса на стороне сервера, поэтому он должен быть уникальным.
Удастся ли мне использовать только MAC-адрес Wi-Fi в качестве моего уникального идентификатора и идентификатор устройства телефона в качестве запасного, если устройство не имеет интерфейса Wi-Fi? Приложению требуется подключение к Интернету, поэтому интерфейс Wi-Fi или deviceId для телефона наверняка будут присутствовать, не так ли? Или это плохая идея?
Я также рассматриваю возможность использования UUID.randomUUID (). Но даже при том, что вероятность создания такого же идентификатора здесь очень мала, вероятность все еще существует.
Какой идентификатор я могу использовать, если этот идентификатор должен также служить идентификатором сеанса на сервере? Также обратите внимание, что если идентификатор уже существует на сервере, право собственности на сеанс будет передано новому пользователю.