• 安卓性能优化总结


    一、合理的管理内存
    1.节制的使用service:如果应用程序当中需要使用Service来执行后台任务的话,请一定要注意只有当任务正在执行的时候才应该让Service运行起来。另外,当任务执行完之后去停止Service的时候,要小心Service停止失败导致内存泄漏的情况。 为了能够控制Service的生命周期,Android官方推荐的最佳解决方案就是使用IntentService,这种Service的最大特点就是当后台任务执行结束后会自动停止,从而极大程度上避免了Service内存泄漏的可能性。
    2.当界面不可见时释放内存
    3.避免bitmap上浪费内存 :读取一个Bitmap图片的时候,有一点一定要注意,就是千万不要去加载不需要的分辨率。
    4.使用优化过的数据集合:如SparseArray,SparseBooleanArray,以及LongSparseArray等,使用这些API可以让我们的程序更加高效。
    5.谨慎使用面向对象编程:因为的抽象的编程方法更加面向对象,而且在代码的维护和可扩展性方面都会有所提高。但是,在Android上使用抽象会带来额外的内存开支,因为抽象的编程方法需要编写额外的代码,虽然这些代码根本执行不到,但是却也要映射到内存当中,不仅占用了更多的内存,在执行效率方面也会有所降低。
    6.尽量避免使用依赖注入框架:框架为了要搜寻代码中的注解,通常都需要经历较长的初始化过程,并且还可能将一些你用不到的对象也一并加载到内存当中。
    7.使用ProGuard简化代码
    8.使用多个进程
    二、高性能编码优化
    1.避免创建不必要的对象:因为创建一个对象就意味着垃圾回收器需要回收一个对象,而这两步操作都是需要消耗时间的。
    1. 静态优于抽象:
    2. 对常量使用static final修饰符
    3. 使用增强型for循环语法
    三、布局优化
    1. 重用布局文件:<include>
    2. <merge>:换用了<merge>标签,这就表示当有任何一个地方去include这个布局时,会将<merge>标签内包含的内容直接填充到include的位置,不会再添加任何额外的布局结构。
    3. 仅在需要时才加载布局
     

    牺牲1994邀请您访问安卓巴士 - 安卓开发 - Android开发 - 安卓 - 移动互联网门户
    http://www.apkbus.com/?fromuid=517150

    转载于:https://www.cnblogs.com/ShengXi-1994/p/8907243.html

  • 相关阅读:
    C++ STL Set使用
    C++ STL算法
    C++ STL List使用
    C++中的构造析构函数
    七、Linux进程调度-应用内核设置调度策略和优先级
    Qcom高通相关汇总
    Cgroup内核文档翻译(8)——/dev/cpuctl/*
    用户进程和内核线程的CPU亲和性设置
    Scheduler内核文档翻译(1)——Documentationschedulersched-tune.txt
    uCgui和emWin的区别
  • 原文地址:https://www.cnblogs.com/twodog/p/12137071.html
Copyright © 2020-2023  润新知