Sono bloccato con un problema, desidero attendere 10 secondi perché voglio che la mia applicazione avvii il codice seguente dopo 10 secondi, ma senza impedire a quella persona di fare clic qualsiasi altra cosa nell'applicazione (senza chiamando Thread.sleep();
).Come posso attendere 10 secondi senza bloccare l'interfaccia utente dell'applicazione in Android
try {
Log.v("msg", "WAIT CheckFrequencyRun");
Thread.sleep(10000); // giving time to connect to wifi
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//if no network
if(wifiManager.getConnectionInfo().getNetworkId()==-1){
//stop wifi
wifiManager.setWifiEnabled(false);
Log.v("msg", "no connection");
handler.postDelayed(this, checkInterval);
}
//else connection
else{
Log.v("msg", "connection");
onDestroy();
}
postDelayed wont't bloccare il Ui ma Thread.Sleep fare. Rimuovi Thread.Sleep e continua il tuo lavoro nel Runnable –