network - wifi scanning android
¿Cómo funciona técnicamente la aplicación para Android “SHAREit”? (2)
Quiero crear una aplicación para compartir datos en Android usando wi-fi como "SHAREit" pero no llegué a donde comienzo.
Entonces, si alguien me aclara el concepto técnico de "COMPARTIR", fue muy eficiente de entender.
- Cuando queremos enviar un archivo vimos el dispositivo receptor disponible con nombre.
- ¿Se muestra el nombre como SSID u otro?
- ¿Cómo transmitimos el nombre y otra información para mostrar en el dispositivo remitente?
- Cuando selecciono un dispositivo para enviar un archivo, ¿qué sucede?
- Qué API realmente puedo usar y para qué me explica, simplemente.
Por favor, todos los recursos y enlaces que podría ejecutar para probar.
Utilice las bibliotecas de Android Wi-Fi P2P y comience con el documento en esta página . Le indica cómo usar Wi-Fi P2P para el descubrimiento de servicios, que se ocupa del artículo 1 en sus requisitos. Básicamente, cada dispositivo transmite un DNS-SD TXT que puede contener información de ID de usuario, etc. Los dispositivos pueden ver su contenido sin tener que establecer un socket, que es lo que más adelante hará para cumplir con el elemento 2 en sus requisitos.
SHAREthem escribir una biblioteca llamada SHAREthem para simular cómo funciona SHAREit . La biblioteca facilita el intercambio de archivos P2P y las transferencias entre dispositivos mediante WiFi Hotspot . También admite aplicaciones para compartir en la web si el receptor no tiene una aplicación instalada. Espero que te ayude a comprender las técnicas relacionadas con el intercambio de archivos mediante WiFi Hotspot.
Dado que hay muchas partes móviles en esta biblioteca, hice un blog con detalles de implementación. Intentaré cubrir algunos componentes aquí:
HotspotController
HC utiliza Java Reflection ya que NO hay API disponibles en Android para habilitar / deshabilitar Hotspots. Las funcionalidades incluyen:
El controlador crea una configuración de punto de acceso WiFi OPEN con un SSID que puede ser interceptado por los Receptores para reconocer a los remitentes SHAREthem, incluidos los nombres de puertos y remitentes.
Restaura la configuración de punto de acceso del usuario cuando el modo Compartir está deshabilitado
Proporciona una lista de clientes WiFi conectados.
Compartir el servidor
Un pequeño servidor HTTP extendido desde NanoHttpd, sirve los datos del remitente a los receptores que usan la dirección IP como nombre de host y funciona en el puerto asignado por el usuario o el sistema de forma predeterminada.
COMPARTE EL SERVICIO
Servicio de Android que administra el ciclo de vida de SHAREthem-server y también maneja la notificación de primer plano con la acción de detener.
IU (Actividades)
Actividades de Android para manejar acciones de compartir / recibir.
Receptor: proporciona una interfaz de usuario para enumerar los archivos disponibles para descargar. Publica una solicitud de descarga en el Administrador de descargas de Android para iniciar la descarga de archivos.
Remitente: muestra la información de IP, Puerto y clientes conectados junto con el estado de transferencia de archivos para cada cliente conectado (Receptor).