如何理解Android程序运行性能优化
2012-03-14 09:51
190 查看
一、慎用Logcat输出
如果你的应用总是在后台不断的输出Log.i或Log.d的内容,除了增加系统开销外,对你应用的整体效率受影响,尤其是持续输出很多内容。由于Log需要底层的JNI调用,对Java虚拟机的开销来说还是不小的。
二、ProGuard扰码器
对于Android应用加密,扰码器可能除了修改类和变量的名称外,增加算法复杂难度,可能出现本身1+1=2的问题变为了2*10-10-8这样的情况,当然Android是举个例子来说明扰码器的工作原理,这对于程序的运行效率和部分逻辑可能会改变,所以这点要权衡配置扰码器是否仅修改变量名称。
三、基础知识
1. 访问变量比访问一个类的字段要快/
2. 同时判断数组为空一般不用getCount()==0这样的方法,直接通过isEmpty()这样的方法来处理
3. 很多情况下慎用全局的静态类。
4. Android应用执行起来很多的CPU占用都是出在JVM资源是放上,所以如果尽可能的减少内存的释放,或增加手机的RAM对程序的执行效率会很有帮助。
5. 尽量少的注册系统广播通知接收,同时适当的可以通过重写onPause或onResume来控制Activity显示时才获取部分系统广播。
如果你的应用总是在后台不断的输出Log.i或Log.d的内容,除了增加系统开销外,对你应用的整体效率受影响,尤其是持续输出很多内容。由于Log需要底层的JNI调用,对Java虚拟机的开销来说还是不小的。
二、ProGuard扰码器
对于Android应用加密,扰码器可能除了修改类和变量的名称外,增加算法复杂难度,可能出现本身1+1=2的问题变为了2*10-10-8这样的情况,当然Android是举个例子来说明扰码器的工作原理,这对于程序的运行效率和部分逻辑可能会改变,所以这点要权衡配置扰码器是否仅修改变量名称。
三、基础知识
1. 访问变量比访问一个类的字段要快/
2. 同时判断数组为空一般不用getCount()==0这样的方法,直接通过isEmpty()这样的方法来处理
3. 很多情况下慎用全局的静态类。
4. Android应用执行起来很多的CPU占用都是出在JVM资源是放上,所以如果尽可能的减少内存的释放,或增加手机的RAM对程序的执行效率会很有帮助。
5. 尽量少的注册系统广播通知接收,同时适当的可以通过重写onPause或onResume来控制Activity显示时才获取部分系统广播。
相关文章推荐
- Android程序运行性能优化
- 向360手机卫士学习如何优化android程序性能
- Android程序运行性能优化
- Android程序运行性能优化
- Android程序运行性能优化
- Android程序运行性能优化
- Android性能优化的一些理解
- 如何优化JAVA程序开发,提高JAVA性能?
- Android进阶#(6/12)让程序更优的技术——性能优化_布局优化
- MySql学习(七) —— 查询性能优化 深入理解MySql如何执行查询
- Eclipse开发Android程序如何在手机上运行
- 如何对Android进行性能优化
- 深入理解计算机系统:优化程序性能
- 如何优化JAVA程序开发,提高JAVA性能
- MySql学习(七) —— 查询性能优化 深入理解MySql如何执行查询
- android开发,如何优化app的性能
- 如何优化Android程序
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!
- 优化性能,保证程序顺畅运行的方案
- MySql学习(七) —— 查询性能优化 深入理解MySql如何执行查询