2013-02-22 7 views
5

Wenn ich Markierungen auf der Karte hinzufügen und löschen, stürzt die App nach einiger Zeit mit der Nachricht aus dem Speicher Ausnahme.Out of memory Ausnahme mit Android Google Maps v2

die logcat Antwort ist:

02-21 06:04:27.670: E/AndroidRuntime(1892): FATAL EXCEPTION: vts_com.rapidBizApps.mapamine 
02-21 06:04:27.670: E/AndroidRuntime(1892): java.lang.OutOfMemoryError 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.bb.d.a(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.s.ap.a(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.ak.r.a(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.ak.e.a(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.ak.e.a(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.ak.o.handleMessage(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at android.os.Handler.dispatchMessage(Handler.java:99) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at android.os.Looper.loop(Looper.java:130) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.ak.e.j_(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.ak.ad.j_(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.bb.l.b(Unknown Source) 
02-21 06:04:27.670: E/AndroidRuntime(1892):  at maps.bb.l.run(Unknown Source) 
02-21 06:04:33.260: D/dalvikvm(1892): GC_EXPLICIT freed 2148K, 53% free 5309K/11207K, external 21007K/21768K, paused 71ms 

mein Code:

loop 20 times: 


    mapView.addMarker(new MarkerOptions() 
             .position(new LatLng(latitude, longitude)) 
             .icon(BitmapDescriptorFactory 
               .fromBitmap((bitmap))) 
             .snippet(text + "    ") 
             .title(mine_name)); 

Für jede neue Schleife, i Markierungen auf der Karte bin zu entfernen und neue hinzufügen.

Ich habe auch genug Sorge um Bitmap als

bitmap.recycle und weise Bitmap mit null nach der Verwendung von Bitmap/

Antwort

1

Ich habe dasselbe Problem in Google Map v2, in meinem Fall wird meine Karte alle 30 Sekunden aktualisiert. Nach einer halben Stunde stürzt meine App ab, ich löste dieses Problem mit mMap.clear(); wo mMap mein Objekt GoogleMap ist.

Sie können diesen Code vor dem Aufruf von for loop setzen.

hoffe das wird dir helfen.

+0

Ich verwende auch mMap.clear(); aber ich bekomme diesen Fehler immer noch. – tasomaniac