Step 1: Define a listening interface
Public Static Interface Onlowmemorylistener { void onlowmemoryreceived (); } /* */
Add the following code to the Step 2:android application file
Initialization
Private Arraylist<weakreference<onlowmemorylistener>> mlowmemorylisteners; /* */
Public MyApp () { new arraylist<weakreference<onlowmemorylistener>>(); } /* */
Register for monitoring
Public voidRegisteronlowmemorylistener (Onlowmemorylistener listener) {if(Listener! =NULL) {mlowmemorylisteners. Add (NewWeakreference<myapp.onlowmemorylistener>(listener)); } } //Remove Listener Public voidUnregisteronlowmemorylistener (Onlowmemorylistener listener) {if(Listener! =NULL) { inti = 0; while(I <mlowmemorylisteners.size ()) { FinalOnlowmemorylistener L =Mlowmemorylisteners.get (i). get (); if(L = =NULL|| L = =listener) {Mlowmemorylisteners.remove (i); } Else{i++; } } } } /*how to ask Hovertree.com*/
When the memory space is too low, it is called by the system
@Override Public voidonlowmemory () {Super. Onlowmemory (); inti = 0; while(I <mlowmemorylisteners.size ()) { FinalOnlowmemorylistener L =Mlowmemorylisteners.get (i). get (); if(L = =NULL) {mlowmemorylisteners.remove (i); } Else{l.onlowmemoryreceived (); I++; } } } /*how to ask Hovertree.com*/
Step 3: Where the memory is wasted, compared to the chip cache, you can implement and register this listener
Recommendation: http://www.cnblogs.com/roucheng/p/androidtuichu.html
A way for Android to release memory