Можно ли передавать iPhone UDID на мой сервер? - PullRequest
3 голосов
/ 31 января 2010

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

И, в том числе передача телефонных номеров. В случае WhatsApp, он автоматически распознает номера моих друзей. Я думаю, что это невозможно без какой-либо передачи данных.

Ответы [ 4 ]

4 голосов
/ 31 января 2010

Вам разрешено передавать UDID устройства на ваши серверы. Вот для чего он предназначен.

2 голосов
/ 06 апреля 2012

Доступ к UDID является основанием для отказа в App Store. См. Альтернативу использованию UDID в https://stackoverflow.com/a/10037636/1286639

1 голос
/ 31 января 2010

Просто убедитесь, что не секрет, что делает ваше приложение. Если он передает телефонные номера, чтобы сохранить их на вашем сервере, четко укажите это в описании приложения или даже запросите разрешение у пользователя в первый раз.

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

0 голосов
/ 30 апреля 2013

Важно отметить разницу между UDID и UUID.

UDID «уникальный идентификатор устройства» зависит от оборудования. Это никогда не меняется для конкретного устройства. По этой причине это стало проблемой конфиденциальности, и Apple блокирует приложения, которые пытаются использовать это. В результате Apple сгенерировала хеш с идентификатором устройства, который можно отключить, особенно для рекламы. Этот новый ID-хеш называется IFA и доступен в iOS 6.0 +.

UUID "универсально уникальный идентификатор" не зависит от аппаратного обеспечения. Это хеш, используемый для идентификации устройства; но не особо абсолютное значение. Например, PhoneGap генерирует UUID на основе свойств устройства; это то, что вы получаете, когда делаете device.uuid. Если вы удалите приложение и переустановите, вы получите новый идентификатор хэша. UUID не блокируется Apple.

Я думаю, что лучшим решением в вашем случае было бы использование IFA с OpenUDID в качестве резервной копии для iOS <6.0. </p>

Вот код, который мы используем. Если IFA недоступен, получите OpenUDID. [[Вы должны установить OpenUDID, подробнее об этом здесь, https://github.com/ylechelle/OpenUDID.]]

NSString* uuid = nil;
if ([[UIDevice currentDevice] respondsToSelector:@selector(identifierForVendor)]) {
    // IOS 6 new Unique Identifier implementation, IFA
    uuid = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
} else {
    // Before iOS6 (or if IFA disabled) you shoud use a custom implementation for uuid
    // Here I use OpenUDID (you have to import it into your project)
    // https://github.com/ylechelle/OpenUDID
    NSString* openUDID = [OpenUDID value];
    uuid = [OpenUDID value];
}
...