WiFi Direct: ¿Con qué frecuencia llamar a Peer Discovery?
-
26-12-2019 - |
Pregunta
Estoy desarrollando una aplicación P2P y estaba siguiendo el tutorial Aquí y, mientras lo estaba probando en 2 teléfonos, estaba vagando cuando tenga que iniciar el descubrimiento de pares "
¡Solo una vez cuando la aplicación se inicia, periódicamente o cada vez en onResume
?
Estoy preguntando porque algunas veces en la que intento mostrar la lista de compañeros que no puede encontrar ninguno. También me gustaría conocer la causa de esto y lo que actualmente es el descubrimiento de pares y qué está haciendo.
Solución
Inicio del descubrimiento a través de los oyentes registrados en la aplicación todos los segundos de 'X' y sí, también querría iniciar el descubrimiento OnResume () también.Además, supongo que ya está aprovechando Intents de transmisión para determinar el cambio del estado.
Sin embargo, no puedo aclarar en los internos del descubrimiento de P2P, pero el descubrimiento podría fallar porque la red está ocupada o debido a un error interno o simplemente porque el dispositivo no admite P2P como se mencionó aquí .
Otros consejos
mManager.discoverPeers(mChannel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this, "onSuccess", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(int reasonCode) {
switch(reasonCode){
case WifiP2pManager.ERROR:
Toast.makeText(MainActivity.this, "Getting error while peers discover", Toast.LENGTH_SHORT).show();
break;
case WifiP2pManager.P2P_UNSUPPORTED:
Toast.makeText(MainActivity.this, "Device is not supported", Toast.LENGTH_SHORT).show();
break;
case WifiP2pManager.BUSY:
Toast.makeText(MainActivity.this, "Device is busy", Toast.LENGTH_SHORT).show();
break;
}
}
});