参考文章:
2、
Android下Activity结束(finish())之后没有释放内存问题的解决方法初探_activity退出后内存不释放_Charle-Chen的博客-CSDN博客
看了两篇文章,总结如下:
看了两篇文章,总结如下:
1、关于Activity窗口声明周期的问题,在ondestory方法中,一定要调用setContentView();方法,将其赋值为一个空的View。
示例:
@Override
protected void onDestroy() {
super.onDestroy();
setContentView(R.layout.view_null);
}
view_null.xml文件。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
</RelativeLayout>
2、慎用 ”static“,能不用就不用。
3、全局对象用完后一定要赋空(即释放)。
4、多线程用完后需要释放资源(赋空或者调用方法关闭线程),或者使用Asynctask !!!!!!线程的另外一个弊端是他的生命周期不可控(具体的我也不懂)。
5、context尽量使用生命周期最长的APPlication Context。
6、适应使用软引用。
7、数据库查询结束后要关闭游标。
8、Bitmap对象不是用时调用recycle()释放内存。