【问题标题】:Safe value of energy impact in iOSiOS 中能源影响的安全值
【发布时间】:2018-03-26 06:56:42
【问题描述】:

我已经创建了一个 iOS 应用程序,它的第一阶段几乎完成了。应用程序的基本流程是用户可以添加他的报价。其他用户可以通过预订来使用此优惠。报价的数量不断增加/更新,因此应用程序中的所有数据都是从服务器加载的。 现在在调试导航器中,所有值或多或少都在安全区域(绿色区域)内,如图所示:

但是能量影响是:

这是应用程序请求服务器加载列表中的项目的时间。现在我的问题是:

  1. 究竟是什么能量影响? (搜索但找不到任何可以正确理解的内容)
  2. 其高价值的可能原因是什么?
  3. 它的安全值是多少?我需要尽量降低吗?
  4. 如果是,那么我可以尝试什么方法来降低它?

此外,即使用户没有与应用交互,能量影响也是(不完全为零):

而根据苹果文档:

当用户不与您的应用交互时,应该没有 能源影响。

任何帮助将不胜感激,因为我是 iOS 新手。

【问题讨论】:

    标签: ios memory-management energy


    【解决方案1】:

    检查您在处理器上 ping 的频率。大多数节能来自处理器进入更好的节能状态(称为 C 状态)。如果您检查得太频繁,处理器会保持唤醒状态,您会消耗更多的电量。

    良好的经验法则是在不显着影响性能的情况下尽可能少地执行 ping/检查。

    让我们看看您的平均组件利用率。 “开销”通常是指过多的上下文切换。一种可能的解决方案是更多地缓冲数据以减少任何网络调用。另一种可能性是过多的内存使用导致大量页面交换。这通常仅在您超出实际内存/RAM 使用量时才会发生。

    “CPU 利用率”看起来很高,尤其是因为您没有进行大量计算。看看我关于尽量减少任何 ping/检查的评论。

    【讨论】:

    • 感谢您提供如此详细的回答。正如您提到的 ping,我的应用程序每 25 秒 ping 一次服务器,以保持套接字连接处于活动状态。我将 25 更改为 35,但它们对能量影响没有影响。如果我增加它更多连接将变为死并且将错过通知。 (我的应用程序适用于即时通知,就像按需应用程序一样)您能否通过考虑这种套接字场景为我提供一些解决方案?
    猜你喜欢
    • 2014-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-03
    • 1970-01-01
    • 1970-01-01
    • 2011-08-06
    • 2017-08-03
    相关资源
    最近更新 更多