Bonsoir. Je suis débutant avec Android.
Je veux connecter en réseau un smartphone android (client) avec un pc (serveur).
J'active le wifi sur le smartphone au début du programme, puis je connecte le client au serveur:
Si le wifi est déjà activé avant le lancement du programme sur le smartphone, la connexion fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class DeclenchementSonnerie extends AppCompatActivity { TextView etatEnvoi = null; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activite_declenchement_sonnerie); etatEnvoi = (TextView) findViewById(R.id.etatEnvoi); WifiManager wifiMgr = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); wifiMgr.setWifiEnabled(true); etatEnvoi.setTextColor(Color.GREEN); Client myClient = new Client("192.168.1.12", 2345); myClient.execute(); } }
Par contre, si le wifi n'est pas activé avant le lancement du programme, le client essaie de se connecter au serveur avant que le wifi soit actif et ça ne marche pas.
Comment il faut s'y prendre pour éviter ce problème ? j'ai essayé une boucle tant que avec un test du genre while( !wifiMgr.isWifiEnabled()) mais ça ne marche pas. Il faut utiliser un processus ?
Merci.
Partager