Как правило, iOS не позволяет получить постоянные уникальные идентификаторы (IMEI, UDID, MAC-адрес Wi-Fi и т. Д.) ( source ).
В руководстве разработчика Codename One написано:
Не используйте приложение для получения UDID!Большинство возвращает неправильное значение, официальный способ получить UDID - через itunes.
Если вам необходимо однозначно идентифицировать устройство, лучшее, что вы можете сделать, - это использовать метод Codename One Log.getUniqueDeviceId()
.
Согласно его Javadoc :
Возвращает сгенерированный сервером уникальный идентификатор устройства, который кэшируется локально и действителен только для приложения.Обратите внимание, что этот идентификатор устройства специфичен для вашего приложения и для конкретной установки, он гарантированно будет полностью уникальным или -1, если он недоступен (что может быть из-за сетевой ошибки).Предупреждение: этот метод может блокироваться при доступе к серверу!