Какие данные о владельце устройства может получить разработчик приложения под iOS?

Собираюсь использовать приложение на iPad и на iPhone (iOS 6.0.1). Данные, которыми я буду оперировать в приложении, синхронизируются через облако, которое предоставляет разработчик приложения.


Потенциально разработчик может связать мои персональные данные с данными, которые он кладет в облако.


Вопрос: какие персональные данные о владельце устройства может получить разработчик приложения, используя задокументированные и незадокументированные возможности SDK?


Например:

— apple id

— номер телефона

— номер карты

— email

— имя/фамилию и т.д.
  • Вопрос задан
  • 5314 просмотров
Пригласить эксперта
Ответы на вопрос 4
@rigeborod
Насколько мне известно, ответ короткий: «никакие». Это прописано в гайдлайнах Эппл.

Из того, что можно получить — АйДи текущего устройства:
[[UIDevice currentDevice] uniqueIdentifier]

В IOS 6 этот метод помечен как deprecated. Соответственно, подход к АйДи в этой версии ОС изменился. Теперь есть два разных АйДи: identifierForVendor и identifierForAdvertising. Вот ссылочка: stackoverflow.com/questions/11836225/ios6-udid-what-advantages-does-identifierforvendor-have-over-identifierforadve

Кроме того, есть такая штука, как AdressBook Framework и UI. Не совсем то, о чем вы спрашивали, но почитайте, может в чем-то помочь: developer.apple.com/library/ios/#documentation/ContactData/Conceptual/AddressBookProgrammingGuideforiPhone/Introduction.html

Если описанного выше недостаточно, то можно попросить пользователя указать эти данные непосредственно в вашей программе. Однако я сомневаюсь, что в Аппстор пропустят приложение, которое просит указать номер кредитной карты.
Ответ написан
Комментировать
@xpurpur Автор вопроса
А используя недокументированные возможности как-нибудь можно?

В общем, вопрос звучит так: могу ли я доверить разработчику свои данные без риска, что он может их персонализировать, т.е. связать именно со мной.
Ответ написан
@xpurpur Автор вопроса
Спасибо всем большое, жаль плюсануть не могу.
Ответ написан
Комментировать
egormerkushev
@egormerkushev
iOS разработчик, автор PixelMixel
Номер карты, привязанной к Apple ID, не хранится на устройстве. Это точно.
Вот эти данные можно вытянуть из адресной книги, если юзер даст доступ и разработчик сможет определить, как из сотен записей о нем:
— номер телефона
— номер карты
— email
— имя/фамилию и т.д.


Разработчик может «рыскать» по книге:
There are two ways to find a person record in the Address Book database: by name, using the function ABAddressBookCopyPeopleWithName, and by record identifier, using the function ABAddressBookGetPersonWithRecordID. пруф
то есть искать по имени и по идентификатору.

Так что для вас решением будет обновить девайс до свежей прошивки и не давать доступ приложению к адресной книге устройства. Ну и не указывать внутри приложения никаких платежных данных и пр.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы