20年历史

500强案例

专做APP小程序/网站开发

免费获取设计方案
App性能优化浅谈

File等对象,要注意它们的创建、回收与注册、反注册

- 避免大量使用注解、反射

- 使用RenderScriptOpenGL来进行复杂的绘图操作

- 使用SurfaceView来替代View进行大量、频繁的绘图操作

- 尽量使用视图缓存,而不是每次都执行inflate()方法解析视图

注:这里引用了Android群英传的相关优化点

创建新的对象都需要额外的内存空间,要尽量减少创建新的对象。

将类、变量、方法等等的可见性修改为最小。

针对字符串的拼接,使用StringBuffer替代String

不要在循环当中声明临时变量,不要在循环中捕获异常。

如果对于线程安全没有要求,尽量使用线程不安全的集合对象。

使用集合对象,如果事先知道其大小,则可以在构造方法中设置初始大小。

文件读取操作需要使用缓存类,及时关闭文件。

慎用异常,使用异常会导致性能降低。

如果程序会频繁创建线程,则可以考虑使用线程池。

以上都是些经验总结,大致都相差无几,朋友们在做代码优化的时候,可以根据这些优化点,有针对性去重构代码,其实最重要还是代码的可读性,结构清晰。

性能优化工具

Memory Monitor - 内存监视工具

TraceView

MAT

Android开发者对与以上几个性能调优的工具一定不陌生,这里我也不再写那么多废话了。

最后

写这篇文章的出发点也是对性能优化有个比较清楚的认识,任何事情都不可能一蹴而就,需要循循渐进,对一个初学者你谈优化很不现实,我们先把基本的做好,再去考虑相应的优化。

如有相关需求,欢迎咨询予远信息科技(上海)有限公司!