Как перечислить все доступные сети Wi-Fi на расстоянии? - PullRequest
1 голос
/ 11 июня 2010

Я читал в Google, что это невозможно, и что в OS 2.0 для достижения этой цели был какой-то недокументированный Api, но тогда ваше приложение будет отклонено ....

мы почти все в ОС4.0 .... есть новости по этому поводу?

1 Ответ

2 голосов
/ 08 апреля 2011

В Интернете можно найти решения до версии 2.0. Один из них выглядит следующим образом:

void *libHandle;
void *airportHandle;
int (*open)(void *);
int (*bind)(void *, NSString *);
int (*close)(void *);

libHandle = dlopen("/System/Library/Frameworks/Preferences.framework/Preferences", RTLD_LAZY);
open = dlsym(libHandle, "Apple80211Open");
bind = dlsym(libHandle, "Apple80211BindToInterface");
close = dlsym(libHandle, "Apple80211Close");

open(&airportHandle);
bind(airportHandle, CFSTR("en0"));
close(&airportHandle);

dlclose(libHandle);

Я не уверен, что доступ к этой платформе запрещен. Но его запуск вызывает EXC_BAD_ACCESS. Так что либо код неправильный, структура изменилась, либо как-то заблокирована. Прости меня за любые очевидные ошибки Objective-C. Я говорю на Objective-C только с четверга, так что моя беглость в Objective-C, вероятно, похожа на прыжок с латиноамериканским оратором в враждебный регион Трансильвании.

...