Android系统性能优化备忘

1. 采用JNI调用时,将耗时间的处理放到c/c++层来处理。

 

2. 有些能用文件操作的,尽量采用文件操作,文件操作的速度比数据库的操作要快10倍左右。

 

3. 访问网络的耗时操作启动一个新线程来做,而不要再UI线程来做。

 

4. 如果方法用不到成员变量,可以把方法申明为static,性能会提高到15%到20%。

 

5. 慎用异常,异常对性能不利。只要有异常被抛出,VM就必须调整调用堆栈,因为在处理过程中创建了一个新的对

    象。异常只能用于错误处理,不应该用来控制程序流程。

 

6. 用移位操作替代乘法操作可以极大地提高性能。

 

7. 不要随意的使用stingA=StringB+StringC的写法,有大量拼接操作的地方用StringBuilder代替。

 

8. system_server初始化时,system_init函数中,

    ProcessState::self()->startThreadPool()的调用次数可以适当增加,提高system_server的并发响应性能。

 

9. 开机启动过程中,在ZygoteInit的main函数中,preloadCalsses加载了一千多个,耗费时间较久,

    可以不加载不需要的类。

 

10. 开机启动完成后会扫描预装各目录下的apk,可以将不需要的apk裁掉。

 

11. system_server的run函数里面创建的服务较多,可以将不需要的服务去掉,

      减少系统资源的占用和开机启动时间。

 

12. Android Runtime优化,给dalvik设置合理的参数:

      dalvik.vm.checkjni

      dalvik.vm.execution-mode

      dalvik.vm.heapstartsize

      dalvik.vm.heapgrowthlimit

      dalvik.vm.heapsize

      dalvik.vm.dexopt-flags

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值