2012-01-29 3 views
7

Sto cercando di utilizzare GLSurfaceView su Android e problemi. Sto usando il codice da this OpenGL article. Funziona bene ma quando ruoto il dispositivo, noto che la memoria allocata sta crescendo.Android GLSurfaceView causa perdite?

Quindi io uso MAT per verificare se ho una perdita di memoria e ho trovato che ci sono più istanze Activity lì. Se utilizzo l'albero del dominatore, ho trovato più oggetti GLThread (ma solo uno è in esecuzione). Quindi questo è un errore di Android GLSurfaceview o sto fraintendendo qualcosa su GLSurfaceView?

+0

qualcuno ha una risposta a questo? – sowmia

risposta

1

Ciò è comunemente causato facendo riferimento al contesto Activity anziché fare riferimento al contesto Application. Quando si fa riferimento a , utilizzare sempre getApplicationContext() all'interno di Activity. Evitare l'uso della classe this (all'interno della classe Activity) poiché si riferisce allo Activity.