Red de conocimiento informático - Aprendizaje de programación - iOS implementa el marcado automático de asistencia WiFi obteniendo la información de WiFi actualmente conectado

iOS implementa el marcado automático de asistencia WiFi obteniendo la información de WiFi actualmente conectado

El teléfono móvil está conectado al WiFi del lugar de configuración en segundo plano, lo cual es un nuevo requisito para la asistencia y el fichaje automático. De acuerdo con la información relacionada con WiFi configurada en segundo plano (principalmente el nombre de WIFI y la dirección MAC), verifique si el teléfono móvil está conectado correctamente al WiFi configurado en segundo plano para lograr el marcado de asistencia automático (marcado de asistencia rápido).

SSID hace referencia a: la abreviatura de Service Set Identifier. En pocas palabras, el SSID es el nombre de una red de área local (LAN) y sólo las computadoras configuradas con el mismo valor SSID que el nombre pueden comunicarse entre sí.

En términos sencillos, el SSID es el nombre que le das a tu red inalámbrica.

BSSID es el identificador del conjunto de servicios básicos. Generalmente, el BSSID puede entenderse como la dirección MAC del enrutador inalámbrico. Al observar la dirección MAC del dispositivo móvil conectado a WiFi, puede saber qué ruta está conectada. (BSSID = dirección MAC AP).

La dirección MAC, también conocida como dirección física y dirección de hardware, se registra en la EPROM (un chip de memoria flash que generalmente se puede borrar y programar) cuando el fabricante del equipo de red produce la tarjeta de interfaz de red. . Las direcciones IP son de 32 bits, mientras que las direcciones MAC son de 48 bits.

La longitud de la dirección MAC es de 48 bits (6 bytes), normalmente representada por 12 dígitos hexadecimales, por ejemplo: 00-16-EA-AE-3C: 00-16-EA-AE -3C -40 es una dirección MAC, donde los primeros 6 dígitos hexadecimales 00-16-EA representan el número del fabricante del hardware de red, asignado por IEEE (Instituto de Ingenieros Eléctricos y Electrónicos), y los últimos 6 dígitos hexadecimales AE -3C-40 representan el Número de serie de un producto de red específico (como una tarjeta de red) producido por este fabricante. Mientras no se cambie la dirección MAC, la dirección MAC es única en el mundo. En sentido figurado, una dirección MAC es tan única como el número de identificación que figura en su tarjeta de identificación.

Haga clic en "Proyectos" para ir a "Firmas y características" y haga clic en el botón "Agregar características"

Busque la opción "Acceder a información de WiFi" y haga clic en "Agregar"

Una vez agregada, esta opción aparecerá junto con configuraciones como "Notificaciones push".

Acceder a la información WiFi

En mi práctica, las direcciones MAC también tienen diferentes estilos, como a1:b2:c3:d4:f5:e6, cuyo espaciado es:;a1- b2 -c3-d4-f5-e6, cuyo espaciado es -; a1 b2 c3 d4 f5 e6, cuyo espaciado es de espacios y finalmente, posiblemente ninguno; Entonces, para este caso, descubrí una manera de reemplazar el delimitador.

La dirección MAC WiFi (BSSID) obtenida por iOS está en minúsculas, por ejemplo, a1:b2:c3:d4:f5:e6, pero lo que obtenemos no siempre está completo en las aplicaciones reales. La dirección MAC de WiFi se verá así a1:b2:c3:d4:5:e6 y como la dirección MAC tiene 12 dígitos hexadecimales, tenemos que reemplazar los separadores. Dado que las direcciones MAC tienen 12 dígitos hexadecimales, podemos completar los ceros que faltan para obtener la dirección MAC completa a1:b2:c3:d4:05:e6.

Las direcciones MAC distinguen entre mayúsculas y minúsculas, por lo que uso NSString+Category para convertirlas en una cadena en minúsculas y usar esa cadena para comparar.

Originalmente se pretendía utilizar expresiones regulares para determinar si se trataba de una dirección MAC, pero no se utilizó por varias razones. Es necesario cambiar las reglas de determinación en función de esta regla.

Utilice la biblioteca en AFNetworking para determinar el entorno de red.

Algunas notas sobre cómo obtener el nombre de WiFi y la dirección mac en IOS (el método CNCopySupportedInterfaces() está sólo parcialmente obsoleto y todavía se puede utilizar para obtener el SSID)

WIFI análisis de reloj

Principio de posicionamiento Wifi y adquisición de la lista Wifi de iOS

iOS Obtenga la lista Wifi del teléfono móvil actual iOS: obtenga el nombre de WIFI actualmente conectado al teléfono móvil

iOS: obtenga el WIFI actualmente conectado y su dirección IP

iOS: obtenga la información del WIFI actualmente conectado

¿No puede obtener el SSID del WIFI en iOS 12? ¡No entrar en pánico!