luoyong123456的博客

逆水寒的技术博客哦!欢迎查看!!!!!!!

android开发的一些建议

1.在移动开发中,get/set方法很多时候是完全没有必要的,而且是有性能消耗的,直接使用public的字段;当然如果需要对字段设置一定的控制,get/set方法也是可以酌情使用

2.出于性能考虑,android开发中不推荐使用枚举

3.显示图片时用setImageDrawable是最省内存高效的

4.预防图片OOM请使用底层的方法来替代使用java层的方法,即尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存,因此,改用先通BitmapFactory.decodeStream方法,创建出一个bitmap,再将其设为ImageView的 source,decodeStream最大的秘密在于其直接调用JNI->nativeDecodeAsset()来完成decode,无需再使用java层的createBitmap,从而节省了java层的空间,但是decodeStream直接拿的图片来读取字节码,不会根据机器的各种分辨率来自动适应,因此需要在hdpi和mdpi,ldpi中配置相应的图片资源,否则在不同分辨率机器上都是同样大小(像素点数量),显示出来的大小就不对了;在读取时加上图片的Config参数inSampleSize,可以跟有效减少加载的内存,

5.使用单例模式很好,但是要慎用,因为极有可能造成内存泄漏,遇到一些莫名其妙的对象为成功使用问题,先找找是不是单例的原因导致还是老对象没被替换的问题,如果是,解决方案也很简单,关键地方将老对象设置为null

阅读更多
版权声明:本文为逆水寒原创文章,欢迎转载,敬请注明From哈! https://blog.csdn.net/luoyong123456/article/details/46788687
文章标签: android 建议
个人分类: Android
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭