wifi Direct entre Android et Orange pi
Bonjour,
Je suis confronté à un problème, j'essaye de créer une connexion wifi direct entre un Androïde et une carte Orange PI.
Au Niveau du code Androïde, je me suis basé sur le tuto : android wifi direct.
Sur l'orange pi j’utilise wpa_ctrl.c, pour mes requêtes p2p.
Mon code basiquement fais :
Code:
1 2 3 4 5 6 7 8
|
> Connexion à wpa_supplicant en utilisant wpa_ctrl.c
-> PING REQUEST, reponse : PONG
-> P2p find
-> socket, bind , listen... Pour la creation du serveur, protocole TCP
-> p2p peer FIRST
-> p2p_prov_disc MAC::address_Androïde pbc
-> using Select for checking Connection for accept |
Sur Android :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
mManager.connect(mChannel, config, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
System.out.println("Connection Suceess");
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("Trying Socket connection");
try {
InetAddress serverAddr = InetAddress.getByName(SERVERIP);
Socket socket = new Socket(serverAddr, 4242);
OutputStream outstream = socket .getOutputStream();
PrintWriter out = new PrintWriter(outstream);
String toSend = "String to send";
out.print(toSend);
if (socket.isConnected())
{
System.out.println("Connected: t'es trop fort");
}else
System.out.println("NO CONNECTED: t'es trop naz");
socket.close();
}catch (IOException e)
{
System.out.println(e);
}
}
}).start();
}
@Override
public void onFailure(int i) {
Toast.makeText(MainActivity.this, "Connect failed. Retry.",
Toast.LENGTH_SHORT).show();
System.out.println(i);
System.out.println("Connection failed");
}
});
}
}); |
J'obtiens un Connexion Sucess mais un fail sur la connexion Socket, mais je ne pense pas que le problème sois coté Androïde. Je ne rentre pas non plus dans la fonction de l'interface onConnectionInfoAvailable.
Je pense que le probleme viens du coté Orange Pi. En effet, si je ne trompe pas, sous Androïde quand je vais dans dans Wifi-direct et que je choisis l'orange Pi il devrait se connecter, or il tourne en boucle.
Si vous pouvez m'apportez de l'aide ce serait génial. Merci