Получите уникальный идентификатор (MAC-адрес, UDID и т. Д.) В Adobe AIR для iOS - PullRequest
4 голосов
/ 22 июля 2011

Я пытаюсь получить MAC-адрес для сетевого адаптера устройства пользователя в приложении Adobe AIR для Android и iOS (iPad 2).

В Android это работает правильно, а в iOS - нет. Это код, который я использую:

var vNetworkInterfaces:Vector.<NetworkInterface> = NetworkInfo.networkInfo.findInterfaces();

for each (var networkInterface:NetworkInterface in vNetworkInterfaces) {
    trace(networkInterface.hardwareAddress);
}

Это работает в Android, но в iOS я получаю это при попытке запустить findInterfaces ():

Ошибка # 1009: невозможно получить доступ к свойству или методу пустой ссылки на объект.

Так что кажется, что networkInfo.findInterfaces () не реализована в iOS. Я попытался получить значение:

NetworkInfo.isSupported

И значение это верно для Android, но неверно для iPad 2. Так что, похоже, NetworkInfo не поддерживается в iOS

Есть ли в iOS другой способ получить уникальный идентификатор устройства? (это не обязательно должен быть MAC; я просто хочу однозначно идентифицировать устройство пользователя)

Ответы [ 2 ]

3 голосов
/ 22 января 2012

На самом деле есть способ получить MAC-адрес на iOS тоже;): Получение NetworkInfo как с Android, так и с iOS .

0 голосов
/ 14 августа 2011

Создайте свой собственный случайный UID и сохраните его на устройстве.

Каждый раз, когда приложение запускается, проверьте, не сгенерировали ли вы UID и не сохранили ли его, чтобы не перезаписывать его.

...