2015-04-20 4 views
1

UDID устройства iOS (уникальные идентификаторы устройств) представляют собой строки шестнадцатеричных чисел. Почему они рассматриваются как чувствительные к регистру (когда мы хотим зарегистрировать их для целей тестирования)?Почему iOS UDIDs чувствителен к регистру?

UDID генерируются из ХАШ-функции SHA-1, а затем преобразуются в Hex. Итак, для всех целей и задач A == a, B == b, .. F == f.

Однако, если мы используем прописные буквы, регистрация IPhone для тестирования не работает. Является ли это ошибкой Apple?

http://theiphonewiki.com/wiki/UDID

http://en.wikipedia.org/wiki/SHA-1

http://en.wikipedia.org/wiki/Hexadecimal

+1

«Доктор, доктор болит, когда я это делаю ...». Почему бы вам не избегать их верхней части? – trojanfoe

+3

Я голосую, чтобы закрыть этот вопрос как не по теме, потому что это не вопрос прямого программирования. –

+1

Это не вопрос программирования. Как сказал ceejayoz, для этого нет никакого соглашения. Итак, ответ на ваши вопросы: Потому что _Apple_ так хочет. – NSPunk

ответ

1

Это не ошибка, там просто нет стандарта, и это до тех людей, внедряющих для использования (или сделать это без учета регистра). http://en.wikipedia.org/wiki/Hexadecimal

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

Поскольку у вас возникли проблемы, когда вы прописные в UUID, остановка делает это.

+0

ceejayoz, trojanfoe: мои клиенты продолжают отправлять мне UDID в верхние регионы. Не уверен, как они его генерируют, возможно, используя некоторые сторонние приложения. В любом случае, математически случаи эквивалентны в шестнадцатеричном виде, поэтому нет смысла различать их. Это должно было быть нечувствительным к регистру. – exifguy

+1

@exifguy Ну, похоже, они, по-видимому, не так, а в нижнем регистре, и переходят к большим трудностям программирования. – ceejayoz

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