Android的Application误区
作者:互联网
误点1
Application在Dalvik中只存在一个,所以不用再去傻乎乎的写单列去获取对象了.如果一个App中存在多进程(注意进程和线程的区别)的话,那么会存在多个Dalvik.
误点2
Application 有两个子类,一个是MultiDexApplication(对于APP出现65536
的问题他会帮助你的解决问题),MockApplication(测试用例驱动(TDD)开发模式中使用Moke进行测试时).
误点3
在Application中可以进行一些配置的初始化,如图片加载,网络配置等.在Application.onCreate()
中不要进行耗时操作,需要的耗时操作可以通过懒加载的,异步,延时加载的方式记性操作.对于这个时间界限是多少秒,或者是多少毫秒我暂时没有找到.我认为时间应该在500毫秒差不多.
误点4
Application是在低内存的情况下是可以被销毁的,因此不要在这里面对象或者是数据的保存工作.而且在onLowMemory()
和onTrimMemory()
方法中我们可以进行内存回收的操作,如关闭数据库链接,移除图片(内存和缓存的)可以降低被回收的风险.
误点5
因为Application的生命周期和Dalvik虚拟机是一样的,进行单列或静态的时候我们可以可以使用Application,Application在Activity中或者是Fragment中尽量不要使用(会造成内存泄漏哟).Activity和Fragment持有Application的话不会被内存回收,如果很多个对象使用了Application的话,你感受一下垃圾是有多少?
标签:Dalvik,可以,Application,误区,误点,Android,加载,内存 来源: https://www.cnblogs.com/alasola/p/14885322.html