Vazamento de memória SupportMapFragment do Google Maps Android API v2

Usando 2 atividades simples. Primeira atividade que contém apenas um botão para iniciar a segunda atividade que contém o mapa:

Atividade principal:

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

public void goToMap(View view){ //This is just the onClick method for the button
    Intent intent=new Intent( this, BigMapTest.class);
    startActivity(intent);
}

A atividade do mapa:

public class BigMapTest extends FragmentActivity {
SupportMapFragment mapFragment;
GoogleMap map;

@Override
protected void onCreate(Bundle arg0) {
    // TODO Auto-generated method stub
    super.onCreate(arg0);

    setContentView(R.layout.travel_diary_big_map);

    mapFragment=(SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.big_map);
    map=mapFragment.getMap();

}

O layout XML para a atividade do mapa:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<fragment
        android:id="@+id/big_map"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        class="com.google.android.gms.maps.SupportMapFragment"  
        />

Agora, quando eu executo este código, pressiono o botão para mover para a Activity com o mapa, e pressionando de volta para chegar à primeira atividade ... e repetindo o processo, consigo ver o heap aumentar de tamanho a cada vez, até atingir são limites e então começa a apertar. Se você mexer um pouco mais com o mapa (ou seja, zoom) eu posso obter uma exceção OOM neste momento.

01-25 16: 10: 13.931: D / dalvikvm (21578): GC_FOR_ALLOC liberado 1898K, 7% livre 45859K / 49187K, pausado em 204ms
01-25 16: 10: 14.671: I / dalvikvm-heap (21578): monte o heap de destino do GC de 52.724 MB para 48.000 MB
01-25 16: 10: 14.671: D / dalvikvm (21578): GC_CONCURRENT liberou 2534K, 6% livre 46554K / 49187K, pausado em 3ms + 14ms
01-25 16: 10: 15.372: I / dalvikvm-heap (21578): monte o heap de destino do GC de 52.979 MB para 48.000 MB
01-25 16: 10: 15.382: D / dalvikvm (21578): GC_CONCURRENT liberou 2273K, 5% livre 46815K / 49187K, pausado 3ms + 15ms
01-25 16: 10: 15.622: I / dalvikvm-heap (21578): monte o heap de destino do GC de 52.604MB para 48.000MB
01-25 16: 10: 15.622: D / dalvikvm (21578): GC_FOR_ALLOC liberado 657K, 6% livre 46431K / 49187K, pausa de 202 ms
01-25 16: 10: 16.203: I / dalvikvm-heap (21578): Clipe do heap de destino do GC de 52.959MB para 48.000MB
01-25 16: 10: 16.203: D / dalvikvm (21578): GC_FOR_ALLOC liberou 1469K, 5% livre 46796K / 49187K, pausado 217ms
01-25 16: 10: 16.203: I / dalvikvm-heap (21578): Forçando a coleta de SoftReferences para alocação de 278744 bytes
01-25 16: 10: 16.423: I / dalvikvm-heap (21578): Clipe do heap de destino do GC de 52.952MB para 48.000MB
01-25 16: 10: 16.423: D / dalvikvm (21578): GC_BEFORE_OOM liberado 9K, 5% livre 46786K / 49187K, pausado 219ms
01-25 16: 10: 16.423: E / dalvikvm-heap (21578): falta de memória em uma alocação de 278744 bytes.

Qualquer sugestão / ajuda seria apreciada.

questionAnswers(4)

yourAnswerToTheQuestion