Bonjour à tous,

J'ai suivi la FAQ pour mettre une boite de progression en attendant le calcul de ma position utilisateur, mais j'obtiens une erreur et un arrêt de l'application à chaque fois que la position est trouvée....

Voici mon code (je vous mets juste le run() le reste est ici):

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
public void run() 
	{
 
 
		// Calcul de la position utilisateur à l'aide du GPS
        LocationManager locationManager = (LocationManager)getBaseContext().getSystemService(Context.LOCATION_SERVICE);
        LocationListener gpsListener = new LocationListener() {
        	// Cette méthode est appelée directement après avoir récupéré les coordonnées GPS
            @Override
            public void onLocationChanged(Location location) {
 
            	Toast.makeText(getBaseContext(), "OK lat : "+location.getLatitude(), Toast.LENGTH_LONG);
            	// Ici on à terminé l'opération, donc on peut fermer la boite de progression
            	handler.sendEmptyMessage(0);
            }
 
            @Override
            public void onProviderDisabled(String arg0) {
            }
 
            @Override
            public void onProviderEnabled(String arg0) {
            }
 
            @Override
            public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
            }            
        };
 
        Criteria criteria = new Criteria();
        criteria.setAccuracy(Criteria.ACCURACY_FINE);
        criteria.setAltitudeRequired(false);
        criteria.setBearingRequired(false);
        criteria.setCostAllowed(true);
        criteria.setPowerRequirement(Criteria.POWER_MEDIUM);
 
        locationManager.requestLocationUpdates(locationManager.getBestProvider(criteria, true), 100, 1, gpsListener); 
 
 
	}
 
 
 
Manifest :
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />