[转][学习]软件绿色联盟应用体验标准5.0_功耗标准-公示版

2023-11-14

文档来源:软件绿色联盟

软件绿色联盟应用体验标准5.0_功耗标准-公示版.pdf

软件绿色联盟官方-下载网址

https://www.china-sga.com/index.html

软件绿色联盟应用体验标准 5.0-功耗标准

编制单位:软件绿色联盟·技术与标准工作组
2021 年 1 1 月

前 言

  • 本标准由软件绿色联盟技术与标准工作组提出并归档。
  • 本标准主要起草单位:百度、华为、阿里巴巴、中国信息通信研究院泰尔终端实验
    室。
  • 本标准主要起草人:王正意、胡军、杨恒、闫诗文、阳际荣、苏兆飞。

1 范围

本标准规定了泛智能终端设备应用软件功耗设计要求和测量标准。
本标准适用于应用软件的设计、开发及检测。

2 规范性引用文件

规范性引用《软件绿色联盟应用体验标准 3.0 – 功耗标准》。

3 术语、 定义和缩略语

3.1 术语和定义

3.1.1 泛智能终端

泛智能终端是指能连入互联网、智能化、自动化的设备,因此可以认为泛智能终端其
中一种类型便是移动智能终端。移动智能终端拥有接入互联网能力,通常搭载各种操
作系统,可根据用户需求定制化各种功能。生活中常见的智能终端包括移动智能终
端、车载智能终端、智慧屏、可穿戴设备等。

3.1.2 泛智能终端操作系统

泛智能终端操作系统,基于同一套系统能力、适配多种终端形态的分布式理念,能够支
持手机、平板、智能穿戴、智慧屏、车机等多种终端设备,提供全场景(如移动办公、
运动健康、社交通信、媒体娱乐等)业务能力。

3.1.3 应用功耗

功耗,字面意义上即消耗的能量,对于应用来说,即应用工作时所消耗的电量。

应用工作时所消耗的电量,除了与应用对手机或其他移动设备(以下简称“设备”)上
的器件占用情况相关外,还与设备上的器件自身功率相关。

由于设备的复杂性和多样性,以及考虑到设备更新速度,本标准不可能将所有设备一
一列举,因此本标准将采取以下方式来对应用功耗进行衡量和判断:

  • 功耗标准去特定手机化

本标准将不描述某一应用在“设备”上的功耗衡量和判断标准。
本标准将通过应用对“设备上的器件”的占用频次和时长,来衡量和判断该应用的
功耗。

3.1.4 器件需求度

器件需求度用来表示应用中某一个场景业务对设备中器件的使用必要性和迫切程度,
分为高需求、中需求、低需求和无需求四类

  • 高需求:表示出于功能和用户体验的需要,应用必须要频繁、持续、高强度地使用该
    器件,如导航过程中对 GPS 传感器的需求度、播放视频过程中对处理器和屏幕的
    需求度、下载过程中对网络传输器件的需求度。

  • 中需求:表示处于功能和用户体验的需要,应用需要频繁、持续地使用该器件,但
    强度相比高需求略有弱化,此需求程度仅在处理器和屏幕两项中出现。

  • 低需求:表示应用在以较低的频率或一次性(用户主动触发)地使用该器件时即可
    满足功能的需要,如非持续定位功能对 GPS 传感器的需求度、播放本地视频过程
    中对网络传输器件的需求度。

  • 无需求:表示应用在该场景下不需要或极少使用该器件,如播放视频过程中对
    GPS 传感器的需求度。

本标准在初期将按照无需求与其它两类进行粗略划分,在后续修订时再加入高需求、
中需求和低需求的详细划分。

3.1.5 前后台

用来表示应用是否处于设备屏幕的顶层。

  • 前台表示应用处于设备屏幕的顶层,用户可以直接看到并进行操作。
  • 后台表示应用未处于设备屏幕的顶层,用户无法直接看到,也无法直接操作。

3.1.6 休眠

系统的一种省电方式。当系统进入休眠状态时,根据系统设置,应用处理器和其它不
在使用的器件将停止运行,只剩下必要的器件(如维持通讯的基带处理器)运行,用
来降低系统的耗电。

3.1.7 推送消息(Push)

推送消息是服务器主动推送给应用的网络消息。推送消息的作用在于主动提醒用户,
不需要主动刷应用程序或者网页去检查更新。

3.1.8 统一推送联盟

统一推送联盟成立于 2017 年 10 月,挂靠单位是电信终端产业协会(TAF),接受工业
和信息化部业务指导。联盟核心任务是:探索推送行业创新,促进终端生产厂商、应
用开发厂商和第三方服务提供商等进行深入合作,整合行业资源,助推形成统一的推
送体系,创造绿色环境,减少与终端用户的利益冲突,提升整体行业形象,降低整体
行业的实现成本,形成自律基础上的产业链协同发展,实现产业的共同繁荣。

3.1.9 统一推送服务(UPS)

统一推送服务(Unified Push Service),简称 UPS。统一推送联盟推出的推送服务,在原
理上直接看齐 iOS 的 APNs 以及谷歌 FCM。

3.1.10 分布式调度

分布式调度通过构建统一的分布式服务管理(发现、同步、注册、调用)机制,支持
对跨设备的应用进行远程启动、远程调用、远程连接以及迁移等操作,能够根据不同
设备的能力、位置、业务运行状态、资源使用情况,以及用户的习惯和意图,选择合
适的设备运行分布式任务。

3.1.11 分布式事件

分布式事件相对于单设备或者本设备事件而言,指的是跨设备的事件,包括 Event、广
播等。

3.1.12 分布式数据同步

分布式数据同步为应用程序提供不同设备间数据库数据分布式的能力。通过调用分布
式数据接口,应用程序将数据保存到分布式数据库中。在通过可信认证的设备间,分
布式数据同步支持应用数据相互同步,为用户提供在多种终端设备上一致的数据访问
体验。

3.1.13 RPC

RPC 是 Remote Procedure Call 的缩写,即远程过程调用, 这里主要是指调用分布式组网
内的另一台设备的过程或函数。

3.1.14 可调度任务(WorkScheduler)

WorkScheduler 是泛智能终端操作系统上提供的一种任务可延时可调度机制,可以通过
该方法将非紧急的任务或工作,延后到某一条件触发时执行。如,将数据更新工作延
迟到插入充电器时再执行。

3.1.15 长驻任务

长驻任务是泛智能终端操作系统提供的一种后台管理机制。如果是用户发起的可感知
业务需要长时间后台运行的,如后台播放音乐、导航、上传下载、设备连接、 VoIP
等,则使用长驻任务延迟进入挂起(Suspend)状态

3.1.16 短时任务

短时任务是泛智能终端操作系统提供的一种后台管理机制。退后台后,如果有紧急不
可推迟且短时间能完成的任务,如应用退后台要进行数据压缩,不可中断,则使用短
时任务申请延迟进入挂起(Suspend)状态。

3.1.17 托管任务

托管任务是泛智能终端操作系统提供的一种后台管理机制。不紧急且可交给系统代理
的任务,称之为托管任务。

3.1.18 低电量模式

低电量模式是在设备电量不足的时候,以提升用户续航体验为目的,兼顾业务功能和
系统续航体验的一种系统模式。通过限制后台应用活动、减弱或关闭部分视觉效果等
措施来降低手机的耗电量。在低电量模式下限制大耗电业务的执行。

3.1.19 夜间模式

夜间模式特指系统识别到的用户长时间的待机休眠状态时间段,默认时间范围为
22:00~次日 7:00,系统根据实际情况动态调整。

缩略语

下列缩略语适用于本文件。

缩略语 中文 全称
AGPS 辅助全球卫星定位系统 Assisted Global Positioning System
API 应用程序编程接口 Application Programming Interface
APNs 苹果推送通知服务 Apple Push Notification service
CPU 中央处理器 Central Processing Unit
FCM Firebase 云信息传递 Firebase Cloud Messaging
GPS 全球定位系统 Global Positioning System
GPU 图形处理器 Graphics Processing Unit
LCD 液晶显示器 Liquid Crystal Display
MOBA 多人在线战术竞技 Multiplayer Online Battle Arena
NFC 近场通信 Near Field Communication
RPC 远程过程调用 Remote Procedure Call
TAF 电信终端产业协会 Telecommunication Terminal Industry Forum Association
UPS 统一推送服务 Unified Push Service
VoIP 基于 IP 的语音传输 Voice over Internet Protocol
WLAN 无线局域网 Wireless Local Area Network

4 低功耗设计标准

本章内容主要围绕后台资源使用是否合理进行约束,主要包括以下三个标准:

  • 1 系统资源占用测量标准。
  • 2 泛智能终端操作系统后台长驻任务申请标准。
  • 3 泛智能终端操作系统后台托管任务申请标准。

4.1 系统资源占用测量标准

4.1.1 通用系统资源占用测量标准

主要测试资源使用率的合理性,减少对前台应用的影响。如检测一个后台可以长时运
行的应用,是否会在后台大量占用 CPU 资源。

4.1.1.1 处理器

本节所述处理器包含应用处理器、图像处理器,不包含基带处理器。

用例编号 1 后台处理器占用测量
  • 用例描述

测量应用在后台时对处理器的占用及阻止休眠锁设置情况

  • 预置条件

被测应用启动后,放至后台

  • 判定标准
  1. 平均每小时占用处理器累计时间不超过 180 秒,即处理器平均占用率不超过 2.5%
  2. 禁止应用在后台长时间持有阻止休眠锁
  • 需考虑的特殊事项

以下场景除外:

  1. 后台录音、播放视频(如画中画)、音乐或观看直播时
  2. 后台导航、计步时
  3. 后台下载视频、音乐或离线地图时
  4. 后台进行收发消息、游戏挂机时
  5. 后台欺诈拦截、网络安全扫描、流量监控、定时提醒时
用例编号 2 前台处理器占用测量
  • 用例描述

测量应用在前台时对处理器的占用情况

  • 预置条件

被测应用启动后,放至前台

  • 判定标准

5 分钟之内 CPU 平均负载不超过 200%

  • 需考虑的特殊事项

以下场景除外:

  1. 性能测评软件
  2. 重载游戏场景
4.1.1.2 屏幕
用例编号 3 后台屏幕占用测量
  • 用例描述

测量应用在后台时对屏幕的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准
  1. 不允许一切后台应用阻止屏幕自动变暗或关闭
  2. 不允许应用在屏幕变暗或关闭时点亮屏幕
  • 需考虑的特殊事项

以下场景除外:
后台收发消息、定时提醒时

4.1.1.3 无线网络

本节所述无线网络包含 WLAN、数据连接、蓝牙、红外及 NFC 等无线信号网络。

用例编号 4 后台无线网络占用测量
  • 用例描述

测量应用在后台时对无线网络的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准
  1. 平均每小时使用无线网络传输数据时间不超过 180 秒
  2. 平均每小时对无线网络的扫描不超过 18 次
  • 需考虑的特殊事项

以下场景除外:

  1. 后台播放在线视频、音乐或观看直播时
  2. 后台导航时
  3. 后台下载视频、音乐或离线地图时
  4. 后台进行收发消息时
  5. 后台进行欺诈拦截、网络安全扫描或流量监控时
4.1.1.4 音频器件

本节所述音频器件包含麦克风和扬声器。

用例编号 5 后台音频器件占用测量
  • 用例描述

测量应用在后台时对音频器件的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准

禁止此情况下应用使用麦克风或扬声器

  • 需考虑的特殊事项

以下场景除外:

  1. 后台播放视频、音乐或观看直播时
  2. 后台导航时
  3. 后台定时提醒时
4.1.1.5 摄像头

本节所述摄像头包含前置摄像头、后置摄像头、红外摄像头及闪光灯。

用例编号 6 后台摄像头占用测量
  • 用例描述

测量应用在后台时对摄像头的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准

禁止此情况下应用使用摄像头或闪光灯

  • 需考虑的特殊事项

以下场景除外:

暂无

4.1.1.6 定位传感器

本节所述定位传感器包含 GPS、 AGPS、北斗、格洛纳斯、气压传感器等

用例编号 7 后台定位传感器占用测量
  • 用例描述

测量应用在后台时对定位传感器的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准

禁止此情况下应用使用定位传感器

  • 需考虑的特殊事项

以下场景除外:

  1. 后台导航时
  2. 后台轨迹追踪时
  3. 后台下载离线地图时
4.1.1.7 动作传感器

本节所述动作传感器包含加速度传感器、磁场传感器、方向传感器、陀螺仪传感器
等。

用例编号 8 后台定位传感器占用测量
  • 用例描述

测量应用在后台时对动作传感器的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准

禁止此情况下应用使用动作传感器

  • 需考虑的特殊事项

以下场景除外:

  1. 后台导航时
  2. 后台记步时
4.1.1.8 定时器唤醒
用例编号 9 后台唤醒定时器占用测量
  • 用例描述

测量应用在后台时对唤醒定时器的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准

平均每小时通过唤醒定时器调起的次数不超过 12 次,建议唤醒
定时器周期>=5 分钟

  • 需考虑的特殊事项

以下场景除外:

  1. 后台收发消息时
4.1.1.9 视频应用
用例编号 10 视频类应用对资源的占用测量
  • 用例描述

测量视频类应用对资源的占用

  • 预置条件

被测视频类应用启动,前台使用

  • 判定标准

优先使用视频硬解码

  • 需考虑的特殊事项

以下场景除外:

暂无

4.1.1.10 消息推送服务
用例编号 11 PUSH 通道占用测量
  • 用例描述

应用采用统一推送服务(UPS)推送消息和通知

  • 预置条件

被测应用启动,后台使用

  • 判定标准

应用接收消息或通知时,在通知中心显示,不唤醒应用

  • 需考虑的特殊事项

以下场景除外:

使用统一推送服务(UPS)

4.1.2 泛智能终端操作系统分布式资源占用测量标准

4.1.2.1 泛智能终端操作系统分布式调度

对跨设备的应用进行远程启动、远程调用、远程连接以及迁移等操作。

用例编号 12 应用作为发起方远程调用或者拉起其他设备上的应用次数占用测量
  • 用例描述

作为发起者远程调用或者拉起其他设备上的应用的次数

  • 预置条件

被测应用启动,后台使用

  • 判定标准

远程调用或者拉起其他设备上的应用的次数每小时累计不超过 3

  • 需考虑的特殊事项

以下场景除外:

  1. 已经在后台远程调用或调度过程中(例如,远程播放音频、
    视频、导航等)
  2. 需要调用或调度远程设备的日程提醒、闹钟类应用。
  3. 调用或调度了远程设备并在后台运行的长驻任务
4.1.2.2 泛智能终端操作系统分布式事件

跨设备的事件,包括 Event、广播等。

用例编号 13 应用作为发送方发布远程分布式事件到远端设备次数占用测量
  • 用例描述

作为发起者发布远程分布式事件到远端设备的次数

  • 预置条件

被测应用启动,后台使用

  • 判定标准

发布远程分布式事件到远端设备的次数每小时累计不超过 3 次

  • 需考虑的特殊事项

以下场景除外:

  1. 已经在后台远程调用或调度过程中(例如,远程播放音频、
    视频、导航等)
  2. 需要调用或调度远程设备的日程提醒、闹钟类应用
  3. 后台收发消息,并需要将消息转送给远程设备
  4. 调用或调度了远程设备并在后台运行的长驻任务
4.1.2.3 泛智能终端操作系统分布式数据同步

在通过可信认证的设备间, 应用数据在不同设备间数据库相互同步。

用例编号 14 应用作为发起方将分布式数据同步到远端其他设备次数占用测量
  • 用例描述

将分布式数据同步到远端其他设备的次数

  • 预置条件

被测应用启动,后台使用

  • 判定标准

将分布式数据同步到远端其他设备的次数每小时累计不超过 3 次

  • 需考虑的特殊事项

以下场景除外:

  1. 已经在后台远程调用或调度过程中(例如,远程播放音频、
    视频、导航等)
  2. 需要调用或调度远程设备的日程提醒、闹钟类应用
  3. 调用或调度了远程设备并在后台运行的长驻任务
4.1.2.4 泛智能终端操作系统远程 RPC 调用

调用分布式组网内的另一台设备的过程或函数。

用例编号 15 应用作为发起方通过 RPC 远程调用其他设备的次数占用测量
  • 用例描述

通过 RPC 远程调用其他设备的函数

  • 预置条件

被测应用启动,后台使用

  • 判定标准

通过 RPC 远程调用其他设备的函数的次数每小时累计不超过 3次

  • 需考虑的特殊事项

以下场景除外:

  1. 已经在远程调用或调度过程中(例如,远程播放音频、视
    频、导航等)的应用
  2. 需要调用或调度远程设备的日程提醒、闹钟类应用
  3. 调用或调度了远程设备并在后台运行的长驻任务
4.1.2.5 泛智能终端操作系统可调度任务
用例编号 16 应以使用可调度任务的测量标准
  • 用例描述

测量应用对可调度的使用频率和运行时长等情况

  • 预置条件

被测应用启动后,使用 WorkScheduler 接口创建可调度任务

  • 判定标准

可调度任务触发, 唤醒应用执行任务

1、 处理周期性重复任务, 运行时间不超过 30 秒,间隔不小于
20 分钟

2、 处理一次性任务, 运行时间不超过 30 秒

  • 需考虑的特殊事项

以下场景除外:

1、执行任务时申请了短时任务在后台没有挂起(Suspend)的场
景。

2、 执行任务时申请了长驻任务在后台没有挂起(Suspend)的场
景。

4.1.2.5 泛智能终端操作系统后台非持续定位
用例编号 17 后台非持续定位使用测量
  • 用例描述

测量应用使用后台定位代理模块定位,对定位传感器的占用

  • 预置条件

被测应用启动后,放至后台

  • 判定标准

禁止此情况下应用使用定位代理模块,对定位传感器的占用

  • 需考虑的特殊事项

以下场景除外:

  1. 后台轨迹追踪时
    (对定位频率/精度要求低,且要求无常驻任务 location 模式使
    用)
4.1.2.6 泛智能终端操作系统 Reminder 提醒
用例编号 18 后台 Reminder 提醒使用测量
  • 用例描述

测量应用对 Reminder 的使用

  • 预置条件

被测应用启动后,使用 Reminder 提供的接口创建提醒通知

  • 判定标准

1、 同一时间内应用创建的有效的 Reminder 个数<=12 个。

2、 提醒周期>=5 分钟。

3、 再次提醒时间间隔>=10 分钟。

  • 需考虑的特殊事项

以下场景除外:

1、日程、 日历类应用和闹钟类应用。

4.2 泛智能终端操作系统后台长驻任务申请标准

4.2.1 长驻任务后台模式

泛智能终端操作系统支持的长驻任务后台模式如下:

长驻任务后台模式 英文名 说明
数据传输 data-transfer 通过网络/对端设备进行数据下载,备份,分享,传输等业务
播音 audioplayback 音频输出业务
录音 audiorecording 音频输入业务
画中画 picture-inpicture 画中画、小窗口播放视频业务
音视频通话 voip 音视频电话, VoIP 业务
导航/位置更新 location 定位、导航业务
蓝牙设备连接及传输 bluetoothinteraction 蓝牙扫描、连接、传输业务(穿戴)
WLAN 设备连接及传输 wifiinteraction WLAN 扫描、连接、传输业务(克隆 多屏)
屏幕抓取 screen-fetch 录屏、截屏业务
多设备互联 multiDevice Connection 多设备互联,分布式调度和迁移等业务

4.2.2 长驻任务申请标准

  • 为避免不合理的申请后台长驻任务,如一个音乐类应用申请后台导航类长驻任务,此长
    驻任务即为不合理任务。
  • 长驻任务要通过应用的类型与长驻任务类型匹配进行,匹配示例表如表 4-1。
  • 长驻任务时为了真正在后台长时间执行某任务,如一个应用申请了长驻任务,但在实际
    运行过程中,并未真正运行或执行此类任务时,或者执行的任务和申请的不匹配,也会
    被系统检测到并被挂起(Suspend)。

表 4-1 应用后台长驻任务类型和托管任务申请匹配示例表

一级分类 二级分类 三级分类 后台长驻任务申请标准 后台托管任务申请标准
游戏 休闲益智 休闲
游戏 休闲益智 IQ
游戏 休闲益智 益智
游戏 休闲益智 捕鱼
游戏 休闲益智 消除
游戏 休闲益智 音乐节奏
游戏 休闲益智 解谜
游戏 经营策略 塔防
游戏 经营策略 古代战争
游戏 经营策略 现代军事
游戏 经营策略 经营
游戏 经营策略 养成
游戏 经营策略 MOBA
游戏 体育竞技 赛车
游戏 体育竞技 篮球
游戏 体育竞技 运动
游戏 体育竞技 足球
游戏 棋牌桌游 斗地主
游戏 棋牌桌游 麻将
游戏 棋牌桌游 桌游与棋类
游戏 棋牌桌游 纸牌
游戏 动作射击 射击
游戏 动作射击 格斗
游戏 动作射击 跑酷
游戏 动作射击 打飞机
游戏 角色扮演 多人在线
游戏 角色扮演 卡牌
游戏 角色扮演 动作
游戏 角色扮演 冒险
游戏 角色扮演 回合制
游戏 角色扮演 生存
游戏 角色扮演 放置挂机
应用 影音娱乐 电视 audio-playback datatransfer
应用 影音娱乐 视频 audio-playback datatransfer
应用 影音娱乐 音乐 audio-playback datatransfer
应用 影音娱乐 K 歌 audio-playback datatransfer audio-recording
应用 影音娱乐 直播 audio-playback datatransfer
应用 影音娱乐 电台 audio-playback datatransfer
应用 实用工具 浏览器 audio-playback datatransfer
应用 实用工具 输入法
应用 实用工具 闹钟 Reminder
应用 实用工具 闹钟
应用 实用工具 输入法
应用 实用工具 工具
应用 实用工具 安全性能
应用 社交通讯 聊天 voip,audio-playback,data-transfer
应用 社交通讯 社区 voip,audio-playback,data-transfer
应用 社交通讯 通讯 voip,audio-playback,data-transfer
应用 社交通讯 婚恋 voip,audio-playback,data-transfer
应用 教育 翻译 audio-playback
应用 教育 英文 audio-playback
应用 教育 学习 audio-playback Reminder
应用 教育 备考 audio-playback Reminder
应用 新闻阅读 电子书 audio-playback
应用 新闻阅读 新闻 audio-playback
应用 新闻阅读 杂志
应用 新闻阅读 电子书
应用 新闻阅读 有声读物
应用 新闻阅读 动漫
应用 新闻阅读 幽默
应用 新闻阅读 体育
应用 拍摄美化 拍照
应用 拍摄美化 短视频 audio-playback
应用 拍摄美化 图像美化
应用 拍摄美化 影音编辑
应用 拍摄美化 相册图库
应用 美食 菜谱 location,audio-playback non-sustained,Location
应用 美食 外卖(顾客
版) location,audio-playback non-sustained,Location
应用 美食 外卖商家版\骑手版 location,audio-playback non-sustained,Location
应用 美食 餐饮 location,audio-playback non-sustained,Location
应用 美食 生鲜 location,audio-playback non-sustained,Location
应用 出行导航 地图 location,audio-playback non-sustained,Location
应用 出行导航 导航 location,audio-playback non-sustained,Location
应用 出行导航 交通票务 location,audio-playback non-sustained,Location
应用 出行导航 用车 location,audio-playback non-sustained,Location
应用 出行导航 公交地铁 location,audio-playback non-sustained,Location
应用 旅游住宿 住宿 location,audio-playback non-sustained,Location
应用 旅游住宿 旅游 location,audio-playback non-sustained,Location
应用 旅游住宿 行程助手 location,audio-playback non-sustained,Location
应用 购物比价 商城 Reminder
应用 购物比价 导购 Reminder
应用 购物比价 团购 Reminder
应用 购物比价 海淘 Reminder
应用 购物比价 快递 Reminder
应用 购物比价 优惠 Reminder
应用 商务 办公软件
应用 商务 效率 Reminder
应用 商务 笔记 Reminder
应用 商务 办公软件
应用 商务 邮箱 data-transfer
应用 商务 招聘
应用 儿童 早教 audio-playback
应用 儿童 儿歌 audio-playback
应用 儿童 母婴 audio-playback
应用 金融理财 银行
应用 金融理财 股票基金 data-transfer
应用 金融理财 理财 data-transfer
应用 金融理财 记账
应用 金融理财 贷款
应用 运动健康 运动 location,audioplayback Reminder
应用 运动健康 健康 location,audioplayback Reminder
应用 运动健康 养生
应用 运动健康 医疗
应用 便捷生活 家政
应用 便捷生活 本地生活
应用 便捷生活 租房买房
应用 便捷生活 家居装修
应用 便捷生活 天气日历
应用 便捷生活 违章查询
应用 便捷生活 汽车资讯
应用 便捷生活 驾考
应用 主题个性 铃声
应用 主题个性 锁屏
应用 主题个性 壁纸

4.3 泛智能终端操作系统后台托管任务申请标准

  • 应用在后台执行“用户不可感知且不涉及用户隐私业务”,如后台下载,应用开发者应
    该通过相应 API 申请。运行时系统会根据用户场景、设备状态,对不同的任务进行相
    应的管控。避免影响功耗、性能、隐私。
  • 应用在后台执行“用户可感知业务”,如后台非持续定位(non-sustained Location)、定
    时提醒(Reminder)等,应用开发者应该通过相应 API 申请。
  • 除非应用申请了后台长驻任务 Location 模式,后台应用在任何其他情况下访问设备位置
    信息, 都被系统认为使用后台非持续定位能力。如果后台应用需要高频及时获取位置信
    息,应该用后台长驻任务 Location 模式,否则使用后台非持续定位。
  • 后台非持续定位限制:按照每 30 分钟一次的频率提供位置信息给后台应用。

具体标准请参考表 4-1。

5 低功耗设计指南

5.1 软件低功耗设计指南

遵循:“非用即关,合理使用,合理调度”的原则

  1. 合理设计软件代码,减少冗余功能,提高 CPU、 GPU、内存使用效率。
  2. 针对器件资源,如 GPS 等,做到非用即关,或按条件设定不同运行等级。
  3. 待机后,减少不必要的唤醒,建议使用统一推送服务(UPS)进行消息推送。
  4. 对非实时性任务,如非严格准时唤醒,建议使用可调度任务。
  5. 针对小电池、发热、耗电敏感设备,建议更严格的控制资源使用。

软件低功耗设计原则表

软件低功耗设计原则 描述
延迟原则 不需要立刻执行某个动作时,建议推迟到耗电不敏感场景执行。例如,可以等到设备充电时再同步数据到其他设备。非紧急的任务,建议采用可调度任务的方式,推后处理时间,让系统集中统一处理。
非用即关原则 1. 外设使用后即时关闭。 LCD、 Camera、 Modem、WLAN、 GPS、 Bluetooth 和 NFC 等外设,在使用完后需即时关闭,以降低功耗。2. 应用切换后台应该默认释放资源,用户可感知的后台业务除外。对于资源的使用要有异常恢复机制,避免出现异常时导致资源不能释放。
精简原则 将应用的冗余操作去掉。例如,可以将非易变的分布式组网参数缓存,而不是每次都重新下载或同步,将下载和唤醒网络的动作精简。
合并原则 将多次唤醒设备的工作合并到一次唤醒态完成。 例如,在不同的时间点发送远程消息,建议将这些消息在一次唤醒时批量发送。
任务最小化原则 软件功能模块化,子功能任务化,任务完成即停。保证每个任务资源占用最小化,避免大而全的子功能占用大量资源。 例如,某一操作包括三个步骤,分别需要资源 A、 B、 C。 建议每个步骤分别打开对应资源,并及时关闭。 避免一次性打开全部资源A、 B、 C, 全部步骤都执行完毕之后才释放。
合理的 UI 刷新 1. 缩小刷新区域、减少刷新频次,消灭不合理刷新 。2. 减少无效图层,过多的图层会引起功耗明显增加。
合理的启动条件 明确任务启动的条件,确保条件满足才启动任务,避免无效拉起或中途退出动作,多做无用功。 例如,在需要联网的应用中,执行某些操作前先进行网络状态判断,如没有网络则终止操作;而不是先操作,再判断网络,导致多余动作。
定位合理 1. 对定位精度要求不高的场景,尽量使用网络定位,减少使用 GPS 定位使用时间。2. 非导航类应用,禁止后台应用获取位置信息。
消息推送 如果每个应用或者服务采用各种的心跳通道,各自建立和维护心跳或者 Push 需要的长连接,将会导致心跳杂乱而频繁唤醒系统。建议采用统一推送服务(UPS)。
严禁长时间持有阻止休眠锁 阻止休眠锁主要是相对系统的休眠而言的,即程序给 CPU 加了锁,那么系统就不会休眠,请注意几个方面的问题:1. 不必要的长时间持锁。2. 锁需要显式释放。3. 禁止使用永久锁。如有必要,可以采用多次申请超时锁的方式来实现。
避免频繁网络数据同步 1. 非必要,严禁频繁网络数据同步,以免频繁唤醒设备。2. 尽可能的减少网络请求频率和增大网络请求时间间隔。
避免频繁唤醒 非必要严禁使用唤醒类定时器频繁唤醒系统,且心跳类定时器间隔不能小于 5 分钟。
后台耗电应用需要提醒用户 在用户不知情的情况下耗电,会引起用户强烈的反感和抵触。特殊耗电业务情况可以进行弹窗、状态栏等方式提醒用户该操作会耗电,或者让用户选择是否继续。 例如,如果长时间托管某耗电业务(例如,海量数据下载或上传、长时间定位),则有必要提醒用户。
关联最小化 禁止非用户主动行为拉起其它三方应用。
任务托管 后台下载、定位、定时提醒等任务尽量通过代理接口实现。防止系统管控影响任务执行。

5.3 泛智能终端操作系统应用后台低功耗设计指南

后台任务长时间无序使用资源,会挤占前台应用所需资源,引起用户性能、功耗体验下
降。对于泛智能终端操作系统,支持短时任务和长驻任务的机制时,应遵循 “先申请后
运行,无申请后台即挂起”原则。

5.3.1 短时任务设计原则

应用退后台后,如果有紧急不可推迟且短时间能完成的任务,如应用退后台进行数据压
缩,并且不可中断,则通过短时任务申请延迟进入挂起(Suspend)状态,应用可以申请
短时任务延迟挂起(Suspend),待任务结束后取消延迟挂起,短时任务进入挂起状态。

  • 申请时机:允许应用在前台时,或退后台在被挂起之前(应用退到后台默认有 x 秒
    的运行时长,具体时长由系统根据具体场景决定)申请延迟挂起,否则可能被挂起
    (Suspend),导致申请失败。
  • 超时:延迟挂起超时(Timeout),系统通过回调知会应用,应用需要取消对应的延迟
    挂起,或再次申请延迟挂起。超期不取消或不处理,处于前台的应用会被强制取消延
    迟挂起。
  • 取消时机:任务完成后申请方应用主动取消延时申请,不要等到超时后被系统取
    消,否则会影响该应用的后台运行时长配额。
  • 配额机制: 为了防止应用滥用保活,或者申请后不取消,每个应用都会有一定配额
    (会根据用户的使用习惯动态调整),配额消耗完就不再允许申请短时任务,所以应
    用完成短时任务后立刻取消延时申请,避免消耗配额。(注,这个配额指的是申请的
    时长,系统默认应用在后台运行的时间不计算在内)。

5.3.2 长驻任务设计原则

如果是用户发起的可感知业务需要长时间后台运行的,如后台播放音乐、导航、上传下
载、设备连接、 VoIP 等,则使用长驻任务避免进入挂起(Suspend)状态。
如果有用户触发的可感知业务如播音、导航、上传下载等, 选择对应后台模式,在任务
启动时或退入后台时,同时提醒用户。如果任务结束,应用应主动退出后台模式。若在
后台运行期间,系统监测到应用并未使用对应后台模式的资源,则也会被挂起
(Suspend)。

5.3.3 可调度任务设计原则

可调度任务的工作机制,可以通过该方法将非紧急的任务或工作,延后到某一条件触
发时执行。

原则说明:

1、条件未触发时,系统不拉起应用

2、条件触发时,系统根据当前状态、用户场景决策,是否拉起
应用,如不与决策点冲突则可拉起,关键决策点为:
“超低电量、低功耗模式、应用使用频率、后台应用刷新开关、
应用切换(小刷子)、运行频率限制、相机使用”。

3、被拉起的应用,如果有用户前台操作时,暂停执行。

4、被拉起的应用,单次有 30 秒的运行时间,如果时间不够最长
可以申请 10 分钟运行,运行时间越长, 可调度任务被触发的
优先级越低。

5.3.4 托管任务设计原则

  • 后台下载服务:使用系统提供的下载接口开发应用。
    原则说明

1、用户点击下载后,应用在前台,可以持续下载

2、用户点击下载后,应用进入后台后,系统根据当前状态、用
户场景决策,下载是否可以持续进行。如不与决策点冲突则可持
续下载,关键决策点为:
“超低电量、低功耗模式、应用使用频率、后台应用刷新开关、
应用切换(小刷子)、系统资源预算、运行频率限制、相机使
用”。

  • 后台定时提醒服务: 提醒代理发送通知,用户点击通知信息可以拉起三方应用
    原则说明

1、 应用提醒数量限制,建议不超过 12 个。

2、 应用提醒频率限制,平均每小时调用次数不超过 6 次。

3、 两个提醒间隔限制, 建议间隔>=5 分钟。

4、 重复提醒延迟时间, 建议间隔>=10 分钟

  • 后台非持续定位服务: 实现位置信息更新每隔 30 分钟一次频率提供给后台应用

原则说明: 应用退到后台挂起状态, 触发后台非持续定位代理服务。
后台定位代理服务每隔 30 分钟一次提供位置信息给应用。
如果与决策点冲突, 定位频率会变化延迟。
关键决策点为:
“超低电量、低功耗模式、应用使用频率、后台应用刷新开关、
应用切换(小刷子)、系统资源预算、运行频率限制、相机
使用”。

5.3 配合系统状态的低功耗设计指南

本节针对配合系统状态的低功耗设计内容进行详细描述,指导模块在低电量模式、夜间
模式时设计调整业务状态。

5.3.1 低电量模式低功耗设计指导

  • 设计原则

低电量模式下,减少耗电业务运行,降低业务触发和执行频率。除用户主动触发的可感
知业务(可见、可听、可触)以外,不允许在低电量模式下自动触发执行耗电量的大后
台业务。

  • 设计说明

低电量模式在电池电量不足的情况下以提升用户续航体验为目的,系统模块需要兼顾业
务功能和系统续航体验,在低电量模式下限制自身大耗电量业务的执行,尽可能的将业
务迁移到充电场景下进行。如,自动备份、自动同步、数据上传、智能学习等业务行
为。

5.3.2 夜间模式低功耗设计指导

  • 设计原则

夜间模式下,停止可感知业务(可见、可听、可触)以外的非系统必须的业务运行。

  • 设计说明

夜间模式特指系统识别到的用户长时间的待机休眠状态时间段,默认时间范围为 22:00 至
次日 7:00,系统根据实际情况动态调整。设备长时间休眠状态下,不允许除用户设置的
可感知业务以外的非系统必须的机制运行。软件绿色联盟应用体验标准 5.0_功耗标准 6 修订记

6 修订记录

日期 修订内容
2017 年 5 月 安卓绿色联盟应用体验标准 1.0 发布
2018 年 7 月 无修订跟随安卓绿色联盟应用体验标准 2.0 发布
2019 年 7 月 更名为《软件绿色联盟应用体验标准 3.0_功耗标准》,处理器增加前台视频类应用功耗
2021 年 9 月 更名为《软件绿色联盟应用体验标准 5.0_功耗标准》增加泛智能终端操作系统应用低功耗设计标准,低功耗设计指南
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[转][学习]软件绿色联盟应用体验标准5.0_功耗标准-公示版 的相关文章

  • 2000端口号的坑

    这两天对接某游戏的充值接口的时候碰到一个恶心的问题 公司机器和服务器请求游戏方2000端口号的时候 死活获取不到返回No Response 但是同一个请求串外网环境都是正常的 经多次和游戏方你来我往之后发现 2000端口默认是sccp协议
  • 2W字长文吐血整理 Docker&云原生

    Docker 和 云原生 一 概念介绍 1 1 Docker Docker 是一个开源的应用容器引擎 让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中 然后发布到任何流行的 Linux或Windows操作系统的机器上 也可以实现虚拟
  • React 应用的 Nginx 缓存控制

    典型 React 应用面临的缓存问题 可通过 Nginx 配置进行解决 通用部署 构建应用后 只需使用 Nginx 指向静态文件即可 server listen 80 root PATH TO APP build try files uri
  • 爬虫碎碎念

    20230304 非专业人士 简单记录自己的需求和思考 0 引言 平时看到一些网站的照片什么的 有那种批量下载的需求 当然有些也是视频网站的图片介绍什么的 也即是说 我需要把这些网站的照片批量下载下来 以前的时候 写过简单的爬虫 因为需求比
  • Docker——搭建ELK

    安装Elasticsearch 1 拉取镜像 docker box home box docker pull elasticsearch 7 14 2 2 在宿主机准备配置文件 创建目录 docker box mkdir p server0
  • 资源list:Github上关于大数据的开源项目、论文等合集

    Awesome Big Data A curated list of awesome big data frameworks resources and other awesomeness Inspired byawesome php aw
  • 注释转换(C->C++)

    转换原理图解 基于上图原理 可以写出代码 主函数 define CRT SECURE NO WARNINGS 1 include
  • Jenkins从配置到实战(二) - Jenkins的Master-Slave分布式构建

    前言 Jenkins的Master Slave分布式构建 就是通过将构建过程分配到从属Slave节点上 从而减轻Master节点的压力 而且可以同时构建多个 有点类似负载均衡的概念 简单理解就是 将Jenkins服务器上的构建任务分配到其他
  • 数据采集专家----4通道AD采集子卡推荐

    FMC136是一款4通道250MHz采样率16位AD采集FMC子卡 符合VITA57规范 可以作为一个理想的IO模块耦合至FPGA前端 4通道AD通过高带宽的FMC连接器 HPC 连接至FPGA从而大大降低了系统信号延迟 该板卡支持板上可编
  • Unity_Shader高级篇_16_Unity Shader入门精要_减少计算复杂度

    16 8 减少计算复杂度 16 8 1 Shader的LOD技术 和16 5 2提到的模型的LOD技术类似 Shader的LOD技术可以控制使用的Shader等级 它的原理是 只有Shader的LOD值小于某个设定的值 这个Shader才会
  • vue rsa对密码加密(jsencrypt)

    首先用npm命令下载jsencrypt npm install jsencrypt dep 在vue文件中引入jsencrypt import JSEncrypt from jsencrypt 对password加密 this encryp
  • vcglib 说明(转载)

    先来看看 VCGlib 能做什么 最基本的 它提供 Mesh triangular mesh tetrahedralmesh 三角网格或四面体网格 数据结构的定义 该数据结构支持对 Mesh数据的快速访问 拓扑信息 空间查询等 以及高效执行
  • Linux编译器-gcc 的使用以及 make/Makefile的用法

    文章目录 一 gcc 编译器 1 gcc 命令格式 gcc选项 2 完成过程 2 1预处理 2 2 编译 生成汇编 2 3 汇编 生成机器可识别代码 2 4 链接 生成可执行文件 二 make Makefile 1 简单介绍 2 示例代码
  • Scala高阶函数

    匿名函数 而在大量的spark中大都用的是匿名函数 不为函数命名 然后将其复制个一个变量 如 匿名函数格式 Val 变量名 参数 类型 gt 函数体 高阶函数 函数参数 1 将函数做参数传给另一个函数 如 首先我们定义了一个函数BigDat
  • 学习记录——matlab批量读取与存储

    要求文件名按照一定规律排列 如 代码 clc close all clear 设置目标文件夹的路径 folder C Users 26748 Desktop two saveFolder C Users 26748 Desktop two0
  • 手撕机器学习算法--一步步推导-------NFL(没有免费午餐定理)

    文章目录 前言 一 NFL是什么 二 表现形式 三 介绍 四 手动推导 前言 其实机器学习也好 深度学习也罢 在我看来 代码编程终究是不重要的 因为现成的库 其数学原理 其公式推导才是我们需要理解的地方 一 NFL是什么 没有免费的午餐定理
  • BLAS+BLACS+LAPACK+SCALAPACK安装

    最快的安装是用下面的scalapack installer 它将自动联网安装SCALAPACK以及所需要的BLAS BLACS LAPACK 下面是简短说明 INTRODUCTION The ScaLAPACK installer is a
  • 人脸识别打卡项目(4)

    目录 服务器打卡函数实现 签到验证检测 百度人脸识别复用 总结 服务器打卡函数实现 打卡函数的主要工作流程如图所示 当启动开始签到后 调用打卡签到响应函数 启动人脸采集设 备 然后与百度人脸库注册的人脸进行对比 如果用户存在 返回用户姓名

随机推荐