美文网首页
性能优化-耗电来源及优化

性能优化-耗电来源及优化

作者: 798798123 | 来源:发表于2020-10-14 22:23 被阅读0次

耗电的主要来源

  • CPU处理,Processing
  • 网络, NETworking
  • 定位, Location
  • 图像 Graphics

耗电优化

  • 尽可能降低CPU/GPU功耗

  • 少用定时器

  • 优化I/O操作

    • 尽量不要频繁写入小数据,最好批量一次性写入。
    • 读写大量重要数据时,考虑用dispatch_io,其体用了基于GCD的异步操作文件I/O的API。用dispatch_io系统会优化系统磁盘访问
    • 数据量比较大的,建议使用数据库
  • 网络优化

    • 减少、压缩网络数据
    • 如果多次请求的结果是相同的,尽量使用缓存
    • 使用断点续传,否则网络不稳定时会多次传输相同的文件内容
    • 网络不可用时,不要尝试执行网络请求
    • 让用户可以取消长时间运行或者速度很慢的网络操作,设置合适的超时时间
    • 批量传输,比如,下载视频流时,不要传输很小的数据包,直接下载整个文件或者一大块一大块地下载,如果下载广告,就一次性多下载一些,然后再慢慢展示。如果下载电子邮件,一次下载多封,不要一封一封的下载。
  • 定位优化

    • 如果只是需要快速确定用户位置,最好用CLLocationManager的requestLocation方法.定位完成后,会自动让定位硬件断电
    • 如果不是导航应用,尽量不要实时更新位置,定位完毕就关掉定位服务
    • 尽量降低定位精度,比如尽量不要使用精度最高的kCLLocationAccuaryBest
    • 需要后台定位时,尽量设置pauseLocationUpdatesAutomatically为YES,如果用户不太可能移动的时候系统会自动暂停位置更新。
    • 尽量不要使用startMonitoringSignificantLocationChanges,优先考虑startMonitoringForRegion;
  • 硬件检测优化

    • 用户移动、摇晃、倾斜设备时,会产生动作(motion)事件,这些事件由加速度计,陀螺仪、磁力计等硬件检测,在不需要检测的场合,应该及时关闭这些硬件。

安装包瘦身 IPA包主要由可执行文件、资源组成

  • 资源(图片、音频、视频等)
    采取无损压缩
    去除没有用到的资源(https://github.com/tinymind/LSUnusedResuorces

  • 可执行文件瘦身
    编译器优化strip linkd product\make strings read-only\symbols hidden by default设置为YES
    去掉异常支持,Enable C++ Exceptions/Enable Objective-C Exceptions设置为NO,Other C Flags添加 -fno-exceptions
    利用AppCode检测未使用的代码 - 菜单栏 -> code -> Inspect code 检测代码!
    编写LLVM插件检测出重复代码、未被调用的代码

LinkMap
生成LinkMap文件,可以看到可执行文件的组成
借助第三方工具

相关文章

  • 性能优化-耗电来源及优化

    耗电的主要来源 CPU处理,Processing 网络, NETworking 定位, Location 图像 ...

  • iOS性能优化 - 整理

    本文主要包含: 性能优化 - 卡顿性能优化 - 耗电优化性能优化 - APP启动优化安装包瘦身 一  性能优化 -...

  • 对于手游的优化

    给手游做优化,无非就CPU性能优化、内存性能优化、资源优化、GPU优化、IO优化、网络优化、耗电优化这些,为此汇总...

  • (四)Android 性能优化 Energy Profiler

    小酌鸡汤 纸上得来终觉浅,绝知此事要躬行。 本文来源《Android 性能优化 全家桶》 为什么要优化应用消耗电池...

  • 性能优化 - 耗电优化

    尽可能减少CPU GPU的功耗 少用定时器 优化文件I/O操作尽量不要频繁写入小数据,最好批量一次性写入读写大量数...

  • 性能优化-耗电优化

    耗电优化 耗电检测工具 Battery Historian是一款Google提供的Android系统电量分析工具,...

  • Android性能优化

    Android性能优化 Android 性能优化的方法 性能问题一般分为3类 UI卡顿 内存问题 耗电问题 布局优...

  • APP耗电性能优化

    APP耗电性能优化 一、主要耗电量原因 1、CPU 处理2、网络3、定位4、图像处理,GPU 二、优化 1、尽可能...

  • iOS底层原理(六):性能优化

    前言 性能优化包括:卡顿检测和优化、耗电优化、启动优化、安装包瘦身几部分组成 一、卡顿检测和优化 1. 屏幕成像原...

  • iOS 性能优化

    iOS的性能优化主要可提现在以前的几个方面:卡顿优化、耗电优化、启动优化、安装包的瘦身。 1、卡顿优化 在了解卡顿...

网友评论

      本文标题:性能优化-耗电来源及优化

      本文链接:https://www.haomeiwen.com/subject/mpfxuktx.html