Android应用程序性能优化
2016-11-24 22:43
141 查看
应用程序的性能问题体现在很多方面, 比如第一次启动速度慢,或者进入某一界面速度慢;动画执行过程不流畅,或者动画执行卡顿时间长;ListView列表滑动过程中卡顿,不流畅;应用程序自定义的某特定界面执行速度慢;响应某一用户事件时长时间无响应(ANR);操作数据库时,执行大量数据的增删改查操作,执行速度慢;文件读写频繁,缓存文件过大导致卡顿;应用长时间运行后,随机出现卡顿现象。
一方面,编程思想。
1. 了解编程语言的编译原理,使用高效编码方式从语法上提高程序性能;
2. 采用合理的数据结构和算法提高程序性能,这往往是决定程序性能的关键;
3. 重视界面布局优化;
4. 采用多线程、缓存数据、延迟加载、提前加载等手段,解决严重的性能瓶颈;
5. 合理配置虚拟机堆内存使用上限和使用率,减少垃圾回收频率;
6. 合理使用native代码;
7. 合理配置数据库缓存类型和优化SQL语句加快读取速度,使用事务加快写入速度;
8. 使用工具分析性能问题,找出性能瓶颈;
另一方面,编程技巧。
1. 避免创建不必要的对象
2. 合理使用static成员
3. 避免内部的Getters/Setters
4. 使用增强for循环
5. 使用package代替private以便私有内部类高效访问外部类成员
6. 合理使用浮点类型
7. 采用
8. 延时加载View. 采用ViewStub 避免一些不经常的视图长期被引用,占用内存.
9. 移除Activity默认背景,提升activity加载速度。
10. cursor 的使用。
11. 广播BroadCast动态注册时,记得要在调用者生命周期结束时unregisterReceiver,防止内存泄漏。
12. 针对ListView的性能优化
13. 注意使用线程的同步机制(synchronized),防止多个线程同时访问一个对象时发生异常。
14. 合理使用StringBuffer,StringBuilder,String
15. 尽量使用局部变量
16. I/O流操作记得及时关闭流对象。
17. 使用IntentService代替Service
18. 使用Application Context代替Activity中的Context
19. 集合中的对象要及时清理
20. Bitmap的使用
21. 巧妙的运用软引用(SoftRefrence)
22. 尽量不要使用整张的大图作为资源文件,尽量使用9path图片
23. 了解并使用库函数
一方面,编程思想。
1. 了解编程语言的编译原理,使用高效编码方式从语法上提高程序性能;
2. 采用合理的数据结构和算法提高程序性能,这往往是决定程序性能的关键;
3. 重视界面布局优化;
4. 采用多线程、缓存数据、延迟加载、提前加载等手段,解决严重的性能瓶颈;
5. 合理配置虚拟机堆内存使用上限和使用率,减少垃圾回收频率;
6. 合理使用native代码;
7. 合理配置数据库缓存类型和优化SQL语句加快读取速度,使用事务加快写入速度;
8. 使用工具分析性能问题,找出性能瓶颈;
另一方面,编程技巧。
1. 避免创建不必要的对象
2. 合理使用static成员
3. 避免内部的Getters/Setters
4. 使用增强for循环
5. 使用package代替private以便私有内部类高效访问外部类成员
6. 合理使用浮点类型
7. 采用
<merge>优化布局层数。 采用
<include
>来共享布局。
8. 延时加载View. 采用ViewStub 避免一些不经常的视图长期被引用,占用内存.
9. 移除Activity默认背景,提升activity加载速度。
10. cursor 的使用。
11. 广播BroadCast动态注册时,记得要在调用者生命周期结束时unregisterReceiver,防止内存泄漏。
12. 针对ListView的性能优化
13. 注意使用线程的同步机制(synchronized),防止多个线程同时访问一个对象时发生异常。
14. 合理使用StringBuffer,StringBuilder,String
15. 尽量使用局部变量
16. I/O流操作记得及时关闭流对象。
17. 使用IntentService代替Service
18. 使用Application Context代替Activity中的Context
19. 集合中的对象要及时清理
20. Bitmap的使用
21. 巧妙的运用软引用(SoftRefrence)
22. 尽量不要使用整张的大图作为资源文件,尽量使用9path图片
23. 了解并使用库函数
相关文章推荐
- android性能优化学习笔记(加快应用程序启动速度:)
- Android应用程序性能优化
- Android应用程序性能优化
- 全面优化ASP应用程序的性能的方法
- 优化ASP.NET应用程序性能研究与探讨
- 也谈ASP.NET 应用程序性能优化(转)
- Domino 6应用程序性能优化指南(第一部分)
- 优化ASP.NET应用程序性能研究与探讨
- 优化ASP.NET应用程序性能研究与探讨
- 优化ASP.NET应用程序性能研究与探讨
- asp.net 优化ASP.NET应用程序性能研究与探讨
- 全面优化ASP应用程序的性能(转载)
- 优化VB.NET应用程序的性能(1)
- 优化ASP.NET应用程序性能研究与探讨
- Asp.net性能优化-提高ASP.Net应用程序性能的十大方法
- 争用、 性能下降和死锁进行 Web 服务请求 ASP.NET 应用程序优化
- 应用程序性能优化
- 利用DelayLoad来优化应用程序的性能.拦截API.
- ASP.NET 应用程序性能优化
- 优化ASP.NET应用程序性能研究与探讨