Android性能优化(0) ——综述

来源:互联网 发布:域名一定要公安备案吗 编辑:程序博客网 时间:2024/06/07 18:36

1.何为性能问题:

在性能测试中存在两个概念:

 (1). 响应时间

指从用户操作开始到系统给用户以正确反馈所耗费的时间。一般包括 系统处理时间 + 网络传输时间 + 展示时间,当然对于非网络应用则不包括网络传输时间。响应时间是用户对性能最直接的感受。

(2). TPS (Transaction per second)

TPS为每秒处理的事务数,是系统吞吐量的指标,在搜索系统中也用QPS(Query per second)来衡量。TPS数值一般与响应时间反相关。


而通常所说的性能问题就是指响应时间过长,系统吞吐量过低。在web性能测试中,也会将高并发下的内存泄露归为性能问题。

在Android应用程序中,由于系统ANR限制,所以对主线程的响应时间提出了更高的要求,因为Android ANR具体要求Activity对事件的响应时间不能超过5秒,BroadcastReceiver中执行的时间不能超过10秒。


2.性能优化方式

明白了何为性能问题后,就能明白性能优化实际上就是优化系统的响应时间,提高TPS。优化响应时间,提高TPS主要包括以下几个方面:

(1). 降低执行时间

这部分可以通过:

a. 缓存机制(包括对象缓存(view等),IO缓存(stream等),网络缓存(Lrucache,Diskcache等));

b. 数据存储类型优化(比如数据结构的选用:如不存在线程安全问题时,选用hashmap,Arraylist,而不是线程安全的vector,hashtable等);

c. 算法优化;

d. JNI(使用C++混编,处理计算量较大的事务);

e. 逻辑优化;

f.  需求优化(减少不必要的功能);


(2). 同步改为异步

利用多线程来提高TPS;


(3). 提前或者延迟操作:

错开时间段来提高TPS(比如优化ListView的滑动效率,可以在滑动时暂停网络线程,当暂停滑动时启动网络线程等)。


接下来会从数据库优化,布局优化,java代码优化等方面讲述。


0 0
原创粉丝点击