Tôi gặp vấn đề, tôi muốn đợi 10 giây vì tôi muốn ứng dụng của tôi bắt đầu mã bên dưới sau 10 giây nhưng không dừng người đó nhấp chuột bất kỳ điều gì khác trong ứng dụng (mà không cần gọi Thread.sleep();
).Làm cách nào để chờ 10 giây mà không có giao diện người dùng ứng dụng khóa trong 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 khóa Ui bạn nhưng Thread.Sleep làm. Hủy bỏ Thread.Sleep và tiếp tục công việc của bạn trong Runnable của bạn –