0
Je veux appeler une méthode après toutes les 10 secondes.mon méthode a thread. application se bloque avec ce code. me suggérer n'importe quelle solutioncomment gérer une minuterie qui exécute un thread
Timer myTimer = new Timer();
MyTimerTask myTimerTask = new MyTimerTask();
// to start
myTimer.scheduleAtFixedRate(myTimerTask, 8000, 15000); // (timertask,delay,period)
maintenant classe d'activité MyTimerTask.
private class MyTimerTask extends TimerTask {
@Override
public void run() {
CheckMsgs();
}
}
et Checkmethod contient
private void CheckMsgs() {
showProgressDialog();
new Thread(new Runnable() {
@Override
public void run() {
msgList = DManager.getConversation(SenderID, reciverID, Url_Settings.conversation_Url);
// Log.d("TAG", "msglist" + msgList.size());
mHandler.post(new Runnable() {
public void run() {
cancelDialog();
if (msgList != null) {
Collections.reverse(msgList);
adapter = new MsgsAdatper(ConversationActivity.this, msgList);
listview.setAdapter(adapter);
if (msgList.size() > 5) {
listview.setSelection(msgList.size() - 1);
}
cancelDialog();
} else {
Toast.makeText(getApplicationContext(), "No record is found", Toast.LENGTH_LONG).show();
}
}
});
}
}).start();
}
journal
06-21 18:15:03.993: E/AndroidRuntime(24733): FATAL EXCEPTION: Timer-0
06-21 18:15:03.993: E/AndroidRuntime(24733): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
06-21 18:15:03.993: E/AndroidRuntime(24733): at android.os.Handler.<init>(Handler.java:121)
06-21 18:15:03.993: E/AndroidRuntime(24733): at android.app.Dialog.<init>(Dialog.java:114)
06-21 18:15:03.993: E/AndroidRuntime(24733): at android.app.AlertDialog.<init>(AlertDialog.java:114)
06-21 18:15:03.993: E/AndroidRuntime(24733): at android.app.AlertDialog.<init>(AlertDialog.java:98)
06-21 18:15:03.993: E/AndroidRuntime(24733): at android.app.ProgressDialog.<init>(ProgressDialog.java:77)
06-21 18:15:03.993: E/AndroidRuntime(24733): at com.eAlimTech.nikahapp.ConversationActivity.showProgressDialog(ConversationActivity.java:483)
06-21 18:15:03.993: E/AndroidRuntime(24733): at com.eAlimTech.nikahapp.ConversationActivity.CheckMsgs(ConversationActivity.java:248)
06-21 18:15:03.993: E/AndroidRuntime(24733): at com.eAlimTech.nikahapp.ConversationActivity.access$9(ConversationActivity.java:247)
06-21 18:15:03.993: E/AndroidRuntime(24733): at com.eAlimTech.nikahapp.ConversationActivity$MyTimerTask.run(ConversationActivity.java:641)
06-21 18:15:03.993: E/AndroidRuntime(24733): at java.util.Timer$TimerImpl.run(Timer.java:284)
poster votre journal chat –
@shylendra maintenant j'ai éditer avec le chat de journal –