Salut
j'ai suivi un tutoriel sur la géolocalisation google map et ça marche, ça affiche bien la map et marque le point de latitude et longitude renseignées, cependant
j'ai une erreur que je ne comprends pas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
12-30 17:08:17.570: E/SKIA(4644): FimgApiStretch:stretch failed
et voiçi le code:
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
public class Localisation extends MapActivity implements LocationListener {
 
	MapView			maMap			= null;
	MapController	monControler	= null;
	double			latitude		= 48.875536;
	double			longitude 		= 2.335796;
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.localisation);
 
        maMap = (MapView)findViewById(R.id.mapview);
        maMap.setBuiltInZoomControls(true);
        GeoPoint point = new GeoPoint(microdegrees(latitude),microdegrees(longitude));
		ItemizedOverlayPerso pinOverlay = new ItemizedOverlayPerso(getResources().getDrawable(R.drawable.marker));
		pinOverlay.addPoint(point);
		maMap.getOverlays().add(pinOverlay);
		monControler = maMap.getController();
		monControler.setZoom(12);
		monControler.setCenter(point);
 
		LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
		lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000L, 500.0f, this);
 
    }
 
	@Override
	public void onLocationChanged(Location location) {
		if (location != null) {
			Toast.makeText(this, "Nouvelle position : " + location.getLatitude() + ", " + location.getLongitude(), Toast.LENGTH_SHORT).show();
			monControler.animateTo(new GeoPoint(microdegrees(location.getLatitude()),microdegrees(location.getLongitude())));
		}
	}
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {        
    	menu.add(0,100,0,"Zoom In");
    	menu.add(0,101,0,"Zoom Out");
    	menu.add(0,102,0,"Satellite");
    	menu.add(0,103,0,"Trafic");
    	menu.add(0,104,0,"Street view");
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
    	switch(item.getItemId()){
    	case 100: monControler.setZoom(maMap.getZoomLevel() + 1)	;break;
    	case 101: monControler.setZoom(maMap.getZoomLevel() - 1)	;break;
    	case 102: maMap.setSatellite(!maMap.isSatellite())			;break;
    	case 103: maMap.setTraffic(!maMap.isTraffic())				;break;
    	case 104: maMap.setStreetView(!maMap.isStreetView())		;break;
    	}
    	return true;
    }
 
	@Override
	public boolean onPrepareOptionsMenu(Menu menu) {
		menu.findItem(102).setIcon(maMap.isSatellite() ?android.R.drawable.checkbox_on_background:android.R.drawable.checkbox_off_background);
		menu.findItem(103).setIcon(maMap.isTraffic()   ?android.R.drawable.checkbox_on_background:android.R.drawable.checkbox_off_background);
		menu.findItem(104).setIcon(maMap.isStreetView()?android.R.drawable.checkbox_on_background:android.R.drawable.checkbox_off_background);
		return true;
	}
 
	private int microdegrees(double value){
		return (int)(value*1000000);
	}
 
	public class ItemizedOverlayPerso extends ItemizedOverlay<OverlayItem> {
 
	    private List<GeoPoint> points = new ArrayList<GeoPoint>();
 
	    public ItemizedOverlayPerso(Drawable defaultMarker) {
	        super(boundCenterBottom(defaultMarker));
	    }
 
	    @Override
	    protected OverlayItem createItem(int i) {
	        GeoPoint point = points.get(i);
	        return new OverlayItem(point,"Titre", "Description");
	    }
 
	    @Override
	    public int size() {
	        return points.size();
	    }
 
	    public void addPoint(GeoPoint point) {
	        this.points.add(point);
	        populate();
	    }
 
	    public void clearPoint() {
	        this.points.clear();
	        populate();
	    }
	}
 
	@Override
	protected boolean isRouteDisplayed() {
		// TODO Auto-generated method stub
		return false;
	}
 
	@Override
	public void onProviderDisabled(String provider) {
		// TODO Auto-generated method stub		
	}
 
	@Override
	public void onProviderEnabled(String provider) {
		// TODO Auto-generated method stub		
	}
 
	@Override
	public void onStatusChanged(String provider, int status, Bundle extras) {
		// TODO Auto-generated method stub		
	}
}
Merci pour votre aide