2013-09-08 3 views
1

Я хочу контролировать установку моего приложения на каждом устройстве, отправив его ANDROID_ID на сервер и контролируя его там. Но в соответствии с этим link в андроида разработчиков блог это не подходящий подход, чтобы сделать that.It говорит:предотвратить множественную установку моего приложения Android

требование заключается в определении конкретной установки, а не физическое устройство. К счастью, делать это просто.

Я хочу знать, как этот способ возможен для моих нужд?

Редакции: Позвольте мне объяснить это более ясным. Я хочу, чтобы пользователь получил регистрационный код и позволил пользователю установить мое приложение на 3 разных устройствах, используя этот код и управляя этим сервером.

+0

В статье утверждается, что вы должны отслеживать * установку * (через уникальный идентификатор, который вы создаете при первом запуске) или * пользователь * (например, через 'AccountManager' API), а не * устройство *. Однако, если вы действительно должны отслеживать устройство, 'ANDROID_ID' является безопасной ставкой на современных устройствах. – user113215

+1

@ user113215: Только если «безопасная ставка» вы игнорируете пользователей корневых устройств, ROM-модов, люди просто пересматривают приложение, чтобы удалить эту проверку и т. Д. Действительно, это может удовлетворить потребности OP, и это, безусловно, такой же хороший вариант, как любой , – CommonsWare

ответ

2

Прежде всего, на корневых устройствах вы не можете много сделать. Когда кто-то настраивается на ПЗУ, он может сделать два разных устройства одинаковыми: каждый вызов API, направленный на поиск разницы, может быть изменен, чтобы вернуть одно и то же значение. Поэтому, если вы хотите, чтобы решение было абсолютно безопасным, вы ввернуты. С обычными пользователями, которые видят проблемы в Android API, я бы предложил хэш каждого идентификатора устройства, который вы можете найти: IMEI, IMSI, ANDROID_ID, MAC-адрес, тип устройства, производитель ... Таким образом, вы, безусловно, предоставите 3 установки для обычных пользователей.

Всегда лучше иметь свободных гонщиков, чем иметь злых клиентов, которые не могут установить приложение на 3 устройства из-за некоторых ошибок API Android, которые дали им одинаковый идентификатор устройства для своих устройств.

+0

спасибо за ваш ответ, я постараюсь сделать свою стратегию по-другому –