Замена уникального идентификатора UIDevice - каковы идентификаторы сетевых интерфейсов iOS? - PullRequest
2 голосов
/ 30 января 2012

Все больше разработчиков iOS, которым приходится полагаться на специфический идентификатор устройства для своих приложений, переключаются с [UIDevice uniqueIdentifier] на использование MAC-адресов сетевой карты устройства.Это кажется общепринятым решением, если вы не хотите или не можете использовать GUID.Я также вижу, что все проверяют сетевое устройство с идентификатором " en0 ".Кто-нибудь может ответить:

  • Что такое устройство en0?
  • Это доступно на всех iPad / iPhone?
  • Доступно ли это, если включен режим полета или устройствоне подключен к сети?

Я нашел этот вопрос UIDevice uniqueIdentifier устарел - что делать сейчас? но на самом деле он не касается деталей, поскольку я спрашиваю о.

1 Ответ

1 голос
/ 30 января 2012

Что такое устройство en0?

Лично я всегда предположил это означает сеть Ethernet , например, Linux использует eth0 и BSD-производные, такие как OSX, похоже, предпочитают en0 , но я не мог этого подтвердить.Это то, что вы можете изменить в большинстве операционных систем (но не в iOS, если не взломан).

FWIW, кажется, другие люди предполагают то же самое , но я несчитаю это окончательным ответом.OTOH это не должно иметь большого значения; -)

Это доступно на всех iPad / iPhone?

AFAIK.Сообщение об этом должно быть функцией операционной системы (а не устройства), и на данный момент нет никаких сетевых устройств iOS (на данный момент).У меня нет старых версий iOS, чтобы подтвердить, была ли она всегда доступна или нет.

Доступна ли она, если включен режим полета или устройство не подключено к сети?

Да, он доступен в режиме полета с использованием NetworkInterface.GetAllNetworkInterfaces () API.Протестировано на iPad первого поколения.

...