Bonjour

Bonjour

Dans un Thread, je fais un traitement
et je veux afficher un message d'avertissement

et j'ai un message d'erreur sur le "show"

Erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
05-28 14:45:21.900: ERROR/AndroidRuntime(4874): FATAL EXCEPTION: Thread-8
05-28 14:45:21.900: ERROR/AndroidRuntime(4874): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at android.os.Handler.<init>(Handler.java:121)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at android.app.Dialog.<init>(Dialog.java:101)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at android.app.AlertDialog.<init>(AlertDialog.java:63)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at android.app.AlertDialog.<init>(AlertDialog.java:59)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at android.app.AlertDialog$Builder.create(AlertDialog.java:786)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at android.app.AlertDialog$Builder.show(AlertDialog.java:801)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at org.karkam.huggy.alert.LocationAlertManager.alert(LocationAlertManager.java:37)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at org.karkam.huggy.alert.LocationAlertManager.manage(LocationAlertManager.java:26)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at org.karkam.huggy.service.AlertServiceTask.calculDistance(AlertServiceTask.java:72)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at org.karkam.huggy.service.AlertServiceTask.run(AlertServiceTask.java:40)
05-28 14:45:21.900: ERROR/AndroidRuntime(4874):     at java.lang.Thread.run(Thread.java:1102)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
public void run() {
		// TODO Auto-generated method stub
		try {
			while (true) {
				synchronized (this) {
 
 
 
					this.wait( 3000 );
AlertDialog.Builder alertbox = new AlertDialog.Builder(c);
 
        // set the message to display
        alertbox.setMessage("This is the alertbox!");
 
        // add a neutral button to the alert box and assign a click listener
        alertbox.setNeutralButton("Ok", new DialogInterface.OnClickListener() {
 
            // click listener on the alert box
            public void onClick(DialogInterface dialog, int arg1) {
                // the button was clicked
            	dialog.dismiss();
            }
        });
 
        // show it
        alertbox.show();;
				}
			}
		} catch (InterruptedException  ie) {
			Log.d(getClass().getSimpleName(), "AlertServiceTask interrupted.");
		}
	}