Есть ли способ идентифицировать пользователя iDevice? - PullRequest
4 голосов
/ 26 декабря 2011

Я занимаюсь разработкой нативного приложения для iOS и являюсь новичком и в разработке объективных устройств C и Apple.

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

Есть ли способ, которым я могу получить это? Что-то я пропустил? Какой-то класс?

Заранее спасибо ... Пит

Ответы [ 3 ]

12 голосов
/ 26 декабря 2011

Все устройства IOS имеют уникальный идентификатор UDID, доступ к которому можно получить через:

[[UIDevice currentDevice] uniqueIdentifier]

Но это не одобряется Apple, и некоторые приложения отклоняются, потому что Apple не хочет, чтобы выотслеживать или обрабатывать устройства как уникальные, потому что вы можете продать их или обменять их с другим человеком.

Что вы можете сделать, это создать UUID, который является уникальным идентификатором , и сохранить его вцепочка для ключей, что означает, что этот уникальный идентификатор останется в телефоне, даже если приложение будет удалено, оно исчезнет только тогда, когда вы выполните сброс к заводским настройкам, чего и хочет Apple.

Другое решение заключается в использованиивнешние библиотеки, которые будут генерировать uniqueID на основе устройства, например openUDID или UIDevice-with-UniqueIdentifier-for-iOS-5

Надеюсь, это поможет!

2 голосов
/ 17 мая 2013

[[UIDevice currentDevice] uniqueIdentifier] теперь устарело .

Вы должны использовать это вместо:

UIDevice *device = [UIDevice currentDevice];
NSUUID *uniqueIdentifier = [device identifierForVendor];

UIDevice Reference Reference

2 голосов
/ 26 декабря 2011

Невозможно получить уникальный идентификатор пользователя (за исключением потенциально вежливого запроса у пользователя необязательного и непроверенного ответа).Политика конфиденциальности Apple выглядит так, как будто она не позволяет им каким-либо образом предоставлять идентификационную информацию для пользователя приложения.

UDID устройства iOS не только не рекомендуется Apple, но и имеет мало общего с пользователем (так какустройство могло сменить владельцев, и у одного пользователя может быть несколько устройств с разными идентификаторами UDID.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...