android开发 节省流量,流量节省程序模式 | Android 开源项目 | Android Open Source Project...
移动数据流量费用高昂,在大众普遍无法承担数据服务费用的地方更是如此。因此,Android 用户迫切希望能够降低应用的数据使用量,或完全阻止应用使用数据流量。Android 7.0 版本中的流量节省程序为用户提供了这项功能。
流量节省程序功能可由用户开启或关闭。应用开发者应使用新的 API 来检查流量节省程序模式是否已开启。如果已开启,则应用开发者可以调整其应用以降低或杜绝流量消耗,从而妥善应对这种情况。
这项功能为最终用户带来极大的好处,因为他们将能够决定哪些应用可以在后台使用流量,而哪些应用只能在前台使用流量。这样就可以确保在流量节省程序处于开启状态时(根据用户设置),实现所需的后台数据流量限制。
实现
由于流量节省程序是平台中的一项功能,因此在默认情况下,设备制造商可在 N 版本中获得相关功能。请在以下位置查找源文件:
packages/apps/Settings/src/com/android/settings/datausage
设置界面
Android 开源项目 (AOSP) 中提供了默认的“流量节省程序设置”界面。有关示例,请查看以下屏幕截图。
这些屏幕截图显示了使用中的流量节省程序模式。
图 1. 关闭/开启流量节省程序
图 2. 省电模式和流量节省程序同时开启
图 3. 特定应用流量使用情况屏幕:“Settings”>“Apps”>“Data usage”
图 4. “Quick Settings”菜单中的流量节省程序状态
应用
重要提示:设备实现人员不得将应用列入白名单。即使他们这样做,用户也可以移除这类应用。如果在设备中加入了其他应用,可能会迫使用户决定针对这些应用使用流量节省程序。
所有应用开发者(包括在设备上预加载应用的 OEM 和运营商)都必须采取相应措施来实现流量节省程序。请参阅 developer.android.com 上的流量节省程序,了解有关检测和监控流量节省程序状态的应用开发者说明。合作伙伴可参阅下文以获得更多实用信息。
要针对流量节省程序模式进行优化,应用需要满足以下几点:
移除不必要的图片
为剩余图片使用低分辨率
使用低比特率视频
触发现有的“精简”体验
压缩数据
留意按流量计费/不按流量计费网络的状态(即使流量节省程序已关闭)。
另外,要良好地配合流量节省程序,应用不得:
自动播放视频
预提取内容/附件
下载更新/代码
要求列入白名单(除非实现核心功能需要在后台使用流量)
将列入白名单视为使用更多流量的许可
验证
实现人员可以运行以下 CTS 测试,从而确保其功能版本能够按预期运行。
com.android.cts.net.HostsideRestrictBackgroundNetworkTests
此外,还可以先运行以下命令来查看所有可用选项,从而使用 adb 命令手动执行测试:
adb shell cmd netpolicy
例如,以下命令将返回已列入白名单的应用的 UID:
adb shell cmd netpolicy list restrict-background-whitelist
android开发 节省流量,流量节省程序模式 | Android 开源项目 | Android Open Source Project...相关推荐
- Android开发-创建安卓工程项目+安卓程序的运行
文章目录 前言 一.为什么学习Android 1.1.什么是Android 1.2.Android的特点 1.3.Android开发的前景 二.Android studio 三.创建安卓工程项目 四. ...
- 【开源项目----Android OPenGLES渲染YUV视频文件】
[开源项目----Android OPenGLES渲染YUV视频文件] OpenGLES对YUV渲染相关文章参考
- android开发实战经典!帮助程序员提高核心竞争力的30条建议,灵魂拷问
现在的IT行业竞争压力越来越大,尤其是Android开发行业.而很多Android程序员却每天都在重复CRUD,原地徘徊! 今年年初,你就想改变现状,于是在网上刷了大量面试题,强行记下之后,开始参加面 ...
- Android开发笔记(九十)建造者模式
基本概念 建造者模式是一种常用的设计模式,它用于把类的表现和构建分离开来.引入建造者模式的缘由,且看博主下面细细道来. 公开属性 一般我们定义一个类的属性,如果属性是公开的,那可以直接对该类的属性赋值 ...
- 谷歌官方推荐《Android开发入门精编》,极致经典,堪称Android入门教程的天花板
我仍记得2015年我决定做安卓开发的那天,这是我一生中做出的最好决定之一.到现在已经接近7年,最初的时候,并没有人告诉我如何做才是正确的.我犯了很多错误,浪费了很多时间. 两年之后,我进入谷歌,我有机 ...
- android开发三大框架!毕业一年萌新的Android大厂面经,2年以上经验必看
不是安卓不行了,是你跟不上了 我的很多读者都在反馈说,现在一个岗位可以收到的简历数,是前几年的几倍.我们必须承认,僧多粥少就是 Android 行业的现状,别说初中级工程师,就是高级工程师也是一抓一大 ...
- Android开发技术前线 (android-tech-frontier) --优质技术文章的聚合项目
Android开发技术前线 ( android-tech-frontier ) Android开发技术前线一个定期翻译.发布国内外Android优质的技术.开源库.软件架构设计.测试等文章的开源项目, ...
- Android开发知识体系!这份354页笔记的Android进阶知识+大厂高频面试题,薪资翻倍
说起IT行业,大多数人脑海里反应出的第一个标签一定是"高薪",而说起程序员,大家更多想到的可能是: 秃顶.木讷.格子衫: 加班多.能赚钱.不花钱: 没对象-- 甚至很多人还说&qu ...
- android开发获取应用本身耗电量_别找了,Android常用自动化工具全在这儿了!
Android常用自动化工具 ADB - 是Google提供的为Android编写UI测试用例的自动化工具, Android开发/测试人员不可替代的强大工具 uiautomator - 是Google ...
- go语言1.4版本将支持面向android开发,[翻译]Go语言1.4版本将支持面向Android开发
Go语言将支持Android 概述 我们建议将Go语言引入Android平台,重点是用Go语言编写游戏程序,API将在Android NDK中定义. 背景 Android平台被设定为一个多应用操作系统 ...
最新文章
- 斑马888t打印机墨盒安装_硒鼓?墨盒?究竟哪个才是打印机的“灵魂伴侣”?...
- android程序表白,几条曲线构建Android表白程序
- 【华为云技术分享】云小课 | 初识HiLens Kit,解锁更多智慧应用场景
- flash跟随鼠标样式
- python中文件打开的合法模式组合_python中各种文件打开模式
- linux命令行用户登录,Linux终端以及用户登录相关命令
- 深耕MySQL - 50道SQL练习题
- 抖音无水印下载不求人
- win7计算机桌面文件位置更改,Win7系统怎么更改桌面文件路径_win7修改桌面文件保存路径的方法...
- JavaScript的API文档自动生成工具jsdoc
- 表设计原则_表格设计原则
- 轻松解决汉字和拼音转换问题!!
- 2018阿里菜鸟无人仓一面面经
- 利用非约束性委派+Spooler打印机服务 制作黄金票据攻击域控
- Android小心心动画
- VMware虚拟机使用虚拟机网络编辑器NAT模式配置网络图文教程,实现联网功能并测试
- 信道容量、数字基带与带通传输系统误码率公式整理
- 电脑无法识别(读取)U盘
- 游戏开发人员眼中的Unity 3D网页游戏測评报告
- PPT使用技巧 二 调整PPT文字和图片的层级关系
热门文章
- android统计app使用时间段,GitHub - yaozs/UseTimeStatistic: Android 系统中统计各个app的使用时长以及使用次数...
- 淘宝直通车什么情况能退款?怎么退?
- css样式鼠标放上去变成手的形状
- 戏说中国互联网5大巨头
- android 视频解决方案,短视频SDK升级为短视频解决方案
- 杭州拒绝车辆“带病”上路 OBD在线接入实现排放动态监管
- POJ 1419-Graph Coloring
- 数据结构和算法(32)之背包问题
- 企业数字化转型 CIO需遵循三大原则
- SpringBoot 使用Prometheus采集自定义指标数据