Android WiFi Directo WIFI_P2P_PEERS_CHANGED_ACTION nunca recibido
Estoy tratando de hacer un juego multijugador para Android vía WiFi directo. Seguí las instrucciones en http://developer.android.com/training/connect-devices-wirelessly/wifi-direct.html para conectarme a dispositivos.
El ActionListener que utilizo con discoverPeers()
devuelve correctamente, pero nunca recibo la intención WIFI_P2P_PEERS_CHANGED_ACTION
en la que llamaría requestPeers()
. Extrañamente cuando entro en ajustes directos del sistema de WiFi en un dispositivo, el otro es capaz de detectarlo con éxito a través de mi aplicación. ¿Necesito hacer que mi dispositivo sea detectable en mi aplicación o algo así? No he encontrado nada que indique que en los recursos para desarrolladores de Android con respecto a WiFi P2P. Hay WiFi directo para el descubrimiento de servicio, pero eso es otra cosa enteramente, ¿no?
- Conecte dos dispositivos a través de Wi-Fi Direct
- ¿Cómo hacer un groupOwner de dispositivo en WifiDirect?
- gama de distancias en las que trabaja directamente Wi-Fi
- Conectarse a dispositivos Android utilizando wifi directo sin necesidad de ayuda
- ¿Cómo puedo transferir archivos entre dispositivos Android mediante Wi-Fi Direct?
- ¿Cómo recuperar la dirección MAC directa de WiFi?
- Cambiar el nombre del dispositivo en wifidirect en android
- Android Wi-Fi Direct: onPeersAvailable
- ¿Dónde puedo obtener un proyecto de aplicación Android Wi-Fi Direct demo para ADT?
- ¿Cómo calcular la distancia entre dos dispositivos Android? (Bluetooth preferido)
- Descubrimiento del servicio directo WiFi de Android y duración de la batería
- ¿Puedo cambiar el propietario del grupo en un grupo persistente en Wi-Fi Direct?
- ¿Es posible conectar dos o más grupos WiFi Direct?
Debes ejecutar discoverPeers()
en otros dispositivos también.
Ahora recibirá la intención WIFI_P2P_PEERS_CHANGED_ACTION
¿Agregaste WIFI_P2P_PEERS_CANGED_ACTION a tu filtro de intenciones del receptor de difusión? Necesitamos más información para ayudarle.
Tienes que encontrar dispositivos en Configuración / Wifi / Direct Wifi / Dispositivos disponibles
Pasé por el mismo problema como tú.
En ese caso, habría dos factores que contribuyen a ese problema. Primero, el evento nunca ocurrió y no se transmitió a otros. Y segundo, aunque el evento ocurrió, el filtro de intención no lo captura.
En mi caso, encontré que el receptor no recibe el evento correctamente. La razón era porque no registrarReceiver al filtro de la intención correctamente.
Después de hacer
intentFilter.addAction(WifiP2PManager.WIFI_P2P_PEERS_CHANGED_ACTION),
No hice
ct.registerReceiver(bReceiver, intentFilter).
Ct es actividad o contexto, y bReceiver es WifiDirectBroadcastReceiver. Primero escribí
ct.registerReceiver(bReceiver, intentFilter),
Pero, no se ejecutó correctamente.
Espero que esto sea útil para usted
- ClassNotFoundException después de actualizar a ADT 18
- Error de autenticación: no se puede responder a ninguno de estos desafíos: {} Android – 401 no autorizado