一、Android不用静态变量存储数据
1.静态变量等数据由于进程已经被杀死而被初始化。
2.使用其他数据传输方式:文件/SharedPreferences/ContentProvider...
二、有关SharedPreferences的安全问题
1.不能跨进程同步。
2.存储SharedPreferences的文件过大问题。
三、内存对象的序列化
序列化:将对象的状态信息转换为可以存储或传输的形式的过程。
1.Serializeble接口 :Java自带的序列化方式,在序列化的时候会产生大量的临时变量,从而频繁地引起垃圾回收。容易造成UI卡顿、内存抖动、OOM等。
2.Percelable接口 :Android自带的序列化方式,在使用内存的时候,Percelable比Serializeble性能更好,缺点是不能把在磁盘上存储的数据用Percelable来序列化。
四、避免在UI线程中做繁重的操作
在UI线程中做耗时操作会造成UI的卡顿。可用Handler、HandlerThread等方式进行耗时操作。