Вопрос по уникальному идентификатору уже задавался и отвечал здесь .Я полагаю, что ANDROID_ID будет работать в 99% телефонов.
Если вам нужно пуленепробиваемое решение, создайте схему регистрации.Создайте веб-метод, который будет возвращать уникальный идентификатор, который вы каким-то образом создадите.Сохраните это в настройках устройства.Оставьте поле пустым изначально.Когда приложение используется впервые, ваше приложение вызовет этот метод и получит уникальный идентификатор.
Кроме того, это может вызвать этические проблемы для вашего приложения.Вам необходимо как минимум сообщить своим пользователям, что вы собираете анонимные данные об использовании приложения, и запросить их согласие.