其实网上写安卓性能优化的文章很多,本来不想写的,但是今天突然看到一个以前没注意过的点,加上自己平时也遇到过很多很多,所以想写一篇把所有知道的性能问题全部集合起来,这篇文章我会持续更新。
1.循环使用
平时在访问一个属性的时候效率远比一个固定变量低,如果你的循环估计次数常常大于 5,
假设 xxx.GetLength()方法的值一般大于 5,正常的情况下我们会这么写,比如
for(int i=0;i<xxx.GetLength();i++)
这里 xxx.GetLength 在每次循环都要调用,必然会影响程序效率,在游戏开发中显得更为明显,
改进的方法应该为
int j=xxx.GetLength()
for(int i=0;i<j;i++)
为什么先写这个,因为类似于这种小的点我们平时很难注意,写这篇文章的时候我也是第一次看到这个点。
2.图片的优化
这是我在刚开始开发的时候遇到的最多的问题,就是图片造成的内存溢出。
一.首先是图片大小的问题,往往是因为美工给到我们的图太大,导致加载的时候内存吃不消,对于大的图片我推荐一个网站
https://tinypng.com/,这个网站可以对图片进行无损压缩,压缩比例十分的高,效果很好。如果是一些小的图建议美工给到svg的图,然后我们通过android studio自带的功能转化成vector格式,这样可以起