2016-06-16 13 views
3

Мне нужен идентификатор устройства, который сохраняется после удаления и переустановки приложения. Я знаю, что класс UUID предоставляет идентификатор с помощью методаANDROID - Получить постоянный идентификатор устройства (UUID)

String uniqueID = UUID.randomUUID().toString(); 

но Android руководство неясно о масштабах и настойчивости. В следующем абзаце говорится:

Операционная система Android предлагает несколько идентификаторов с различными поведенческими характеристиками и какой идентификатор вы должны использовать, зависит от того, как эти следующие характеристики работают с вашим прецедентом. Но эти характеристики также связаны с последствиями конфиденциальности, поэтому важно понять, как эти характеристики играют вместе.

Область

Идентификатор сферу объясняют, какие системы могут получить доступ к идентификатору. Область идентификатора Android обычно поставляется в трех вариантах:

Отдельное приложение. ID является внутренним для приложения и недоступен для других приложений.

Группа приложений - идентификатор доступен для определенной группы связанных приложений.

Устройство - идентификатор доступен для всех приложений, установленных на устройстве. Чем шире область, предоставленная идентификатору, тем выше риск ее использования в целях отслеживания. И наоборот, если идентификатор может быть доступен только одному экземпляру приложения, он не может использоваться для отслеживания устройства между транзакциями в разных приложениях.

воспроизводимость и устойчивость

воспроизводимость и устойчивость определяют срок службы идентификатора и объяснить, каким образом он может быть сброшен. Общие триггеры сброса: сброс в приложении, сброс настроек системы, сброс при запуске и сброс при установке. Идентификаторы Android могут иметь различную продолжительность жизни, но продолжительность жизни обычно связана с тем, как сбрасывается идентификатор:

Только для сеанса - новый идентификатор используется каждый раз, когда пользователь перезапускает приложение.

Установка-сброс - новый идентификатор используется каждый раз, когда пользователь удаляет и переустанавливает приложение.

FDR-reset - новый идентификатор используется каждый раз, когда пользователь сбрасывает устройство.

FDR-persistent - удостоверение личности сохранило заводскую перезагрузку.

Resetability дает пользователям возможность создания нового идентификатора, который не связан с существующей информацией профиля. Это важно, потому что чем длиннее и надежнее идентификатор сохраняется (например, по заводским сбрасываниям и т. Д.), Тем выше риск того, что пользователь может подвергнуться долгосрочному отслеживанию. Если идентификатор сбрасывается при переустановке приложения, это уменьшает постоянство и предоставляет средство для сброса идентификатора, даже если нет явного пользовательского элемента управления для его сброса из приложения или настроек системы.

Но я не знаю, как получить эти идентификаторы, выбрав мой объем и настойчивость. Благодаря

+0

Что вы в конечном итоге принять решение о использовании? –

+0

Я использовал идентификатор экземпляра, предоставленный Google, также если он изменился после того, как вы отключили приложение, это был лучший выбор, также если мне пришлось что-то изменить в своем приложении. – leodev

+0

По идентификатору ** экземпляра ** вы имеете в виду ANDROID_ID? –

ответ

0

Я использую это:

String DeviceId = Settings.Secure.getString(c.getContentResolver(), Settings.Secure.ANDROID_ID); 

Смотри эту тему: Is there a unique Android device ID?

+0

ANDROID_ID не сохраняется на заводских сбрасываниях. – Solidak

+0

Какое перенасыщение и настойчивость обеспечивают это решение? –

+0

Я думаю, что он настойчив до тех пор, пока завод не перезагрузится, как сказал Абдулла или смена романа. Для меня этого достаточно. Я не знаю, изменило ли его системное обновление. – David

 Смежные вопросы

  • Нет связанных вопросов^_^