Estoy buscando una manera de presentar los WiFis disponibles en una Aplicación para el iPhone.
Hasta ahora mi resultado de la investigación fue la siguiente:

  • Las aplicaciones que implementan(ed), tales funcionalidades fueron retirados de la AppStore (significa que no se puede implementar la Aplicación a través de la AppStore de lo que es correcto para mí)
  • De manzana oculta la funcionalidad necesaria para un análisis en un marco y usted no puede encontrar ninguna explicación/comentarios/ejemplos de «cómo usar»
  • http://code.google.com/p/iphone-wireless parece ser la más prometedora. de todos modos, yo no puedo entender cómo incluir la entrega de fuentes en mi código para que se ejecute en un dispositivo

Incluso las adaptaciones que se mencionan htt ://code.google.com/p/iphone-wireless/issues/detail?id=26 no me consiga los resultados deseados. La mayoría de los avances fue acabar con un

dlopen de error: dlopen(/System/Library/SystemConfiguration/Aeropuerto.paquete/Aeropuerto, 1): la imagen no se encuentra
no: __Apple80211Associate

mensaje después del lanzamiento de la aplicación en un dispositivo (iPhone 3GS; iOS 3.1.3).

Utiliza código fuente que procudes el error está aquí:

NSMutableDictionary *networks;
bool scanning;
void *libHandle;
void *airportHandle;
int (*open)(void *);
int (*bind)(void *, NSString *);
int (*close)(void *);
int (*scan)(void *, NSArray **, void *);
networks = [[NSMutableDictionary alloc] init];
//libHandle = dlopen("/System/Library/Frameworks/Preferences.framework/Preferences", RTLD_LAZY);
//libHandle = dlopen("/System/Library/PrivateFrameworks/Apple80211.framework/Preferences", RTLD_LAZY);
libHandle = dlopen("/System/Library/SystemConfiguration/WiFiManager.bundle/WiFiManager", RTLD_LAZY);
open = dlsym(libHandle, "Apple80211Open");
bind = dlsym(libHandle, "Apple80211BindToInterface");
close = dlsym(libHandle, "Apple80211Close");
scan = dlsym(libHandle, "Apple80211Scan");
open(&airportHandle);
bind(airportHandle, @"en0");
NSLog(@"Scanning...");
scanning = true;
NSArray *scan_networks;
NSDictionary *parameters = [[NSDictionary alloc] init];
scan(airportHandle, &scan_networks, parameters);
bool changed;
for (int i = 0; i < [scan_networks count]; i++) {
if([networks objectForKey:[[scan_networks objectAtIndex: i] objectForKey:@"BSSID"]] != nil 
&& ![[networks objectForKey:[[scan_networks objectAtIndex: i] objectForKey:@"BSSID"]] isEqualToDictionary:[scan_networks objectAtIndex: i]])
changed = true;
[networks setObject:[scan_networks objectAtIndex: i] forKey:[[scan_networks objectAtIndex: i] objectForKey:@"BSSID"]];
}
if(changed) {
NSLog(@"NetworksUpdated");
}
scanning = false;
NSLog(@"Scan Finished...");
NSLog(@"Found %i networks: %@", [networks count], networks);

Incluso si probar una de las otras líneas de comentarios, no funciona:
programa recibió EXC_BAD_ACCESS y varios

advertencia: check_safe_call: no se pudo restaurar la actual marco

advertencia: no se puede restaurar previamente marco seleccionado.

Lo que estoy buscando son sugerencias de cómo incluir a los iphone de forma inalámbrica en mi proyecto y cómo modificar el código?
Una alternativa sería una sugerencia sobre cómo buscar WiFis en su entorno.

Sería bueno si alguien puede ayudar.

sólo se trató de: a pesar de que el código me advierte durante el tiempo de ejecución; imprime encontrar WiFis. Debe haber un método mejor que este buggy? Sería bueno correctamente al menos abrir y cerrar el acceso a la WiFi de hardware (que parece que no funciona con el código de arriba) 0o

OriginalEl autor m Jae | 2011-01-19

3 Comentarios

  1. 5

    Para un uso muestra de iphone inalámbrica, usted puede comprobar el post siguiente,

    http://blog.guvenergokce.com/iphone-wireless-scanner-ios5/

    Allí también encontrará una muestra de un proyecto desarrollado con XCode 4.2.

    Como usted ha dicho, esto es sólo para la investigación o proyectos privados, no podemos distribuir.

    Buena suerte,

    Guvener

    ¿Tienes esta subido en otro lugar? Parece que el enlace de arriba es abajo.

    OriginalEl autor Guvener Gokce

  2. 1

    ruta de acceso ha cambiado en 3.X y más allá, desde :

    /System/Library/SystemConfiguration/Aeropuerto.bundle/Aeropuerto

    :

    /System/Library/SystemConfiguration/IPConfiguration.bundle/IPConfifuration

    OriginalEl autor boo

  3. 1

    De verificación este. He creado un Repositorio en GitHub para que.

    Se ejecuta en iphone6+ en iOS8.
    Puede leer RSSI de cada red?
    esto sólo escanea los dispositivos conectados a la misma red y no la wifi disponible/puntos de acceso.
    no es lo original, es necesario en este post

    OriginalEl autor Mongi Zaidi

Dejar respuesta

Please enter your comment!
Please enter your name here