Android 13 高通设备热点低功耗模式

news2024/10/6 16:24:43

需求:

Android设备开启热点,使Iphone设备连接,自动开启低数据模式

低数据模式:

低数据模式是一种在移动网络或Wi-Fi环境下,通过限制应用程序的数据使用、降低数据传输速率或禁用某些后台操作来减少数据流量消耗的优化模式。

这种模式主要用于节省数据流量费用,特别是在移动网络流量费用昂贵的情况下。低数据模式可以通过限制应用程序后台数据传输、减小图片质量、禁用自动播放视频等方式来降低数据流量消耗。在iOS设备上,如iPhone,低数据模式可以通过设置中的蜂窝网络或Wi-Fi选项开启。开启后,系统会自动减少后台未使用的应用刷新数据,节约流量并减少设备功耗,从而增强续航能力。

此外,低数据模式不仅适用于移动网络,也适用于Wi-Fi网络。在Wi-Fi网络下,开启低数据模式还可以提升续航能力。

综上,低数据模式起源为IOS 13以后的功能,最常见的表现就是在切换wifi为移动数据时候,后台下载会暂停

基于上述需求,我们知道设备在使用移动数据时候,默认会暂停后台的下载,那如果设备能区分出连接的wifi是热点还是路由器散发的wifi即可达到文章开头的需求。

测试发现小米设备和IOS,在wifi扫描列表,热点和路由器散发的wifi是有明显区分的,详见如下,曲别针图标的是热点,连接该wifi,状态栏图标也是显示未曲别针,但是大部分Android ,在这一块无区分

如图,小米设备也可以区分出热点和路由器wifi,并且散发的热点也可以被Iphone设备识别为移动热点,但是我的设备散发的热点,IPhone设备当做一个普通的wifi,仔细看下小米设备在开启热点的时候,有一个设备标识,可设置为移动热点还是默认,测试发现,设置默认的话,该热点IPhone设备也识别不出来。

我们分别设置这两个开关,摘取下小米的日志,观察如下不同

我们分别设置这两个开关,摘取下小米的日志,观察如下不同

vendor_elements值不同,我们再次push出来小米的Settings,反编译大概看下,发现设置为移动热点的时候,确实是DD0A0017F206010103010000

由此可以确定,小米和Iphone,会识别DD0A0017F206010103010000这个标识,为这个则认定为热点,看下小米的wifi连接页面,判断是否有{0, 23, -14, 6, 1, 1, 3, 1}这一串的标识(DD是开头,0A表示长度为10,后面的0017F206010103010000就是数据,转为10进制就是:{0, 23, -14, 6, 1, 1, 3, 1,0,0})

在热点相关的类中搜索VendorElements相关,发现设置接口和解析接口

设置:
//QSSI.13\packages\modules\Wifi\framework\java\android\net\wifi\SoftApConfiguration.java
@NonNull
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
public Builder setVendorElements(
        @NonNull List<ScanResult.InformationElement> vendorElements) {
    if (!SdkLevel.isAtLeastT()) {
        throw new UnsupportedOperationException();
    }
    for (ScanResult.InformationElement e : vendorElements) {
        if (e.id != ScanResult.InformationElement.EID_VSA) {
            throw new IllegalArgumentException("received InformationElement which is not "
                    + "related to VendorElements. VendorElement block should start with "
                    + HexEncoding.encodeToString(
                            new byte[]{ (byte) ScanResult.InformationElement.EID_VSA }));
        }
    }
    final HashSet<ScanResult.InformationElement> set = new HashSet<>(vendorElements);
    if (set.size() < vendorElements.size()) {
        throw new IllegalArgumentException("vendor elements array contain duplicates. "
                + "Please avoid passing duplicated and keep structure clean.");
    }
    mVendorElements = new ArrayList<>(vendorElements);
    return this;
}

解析热点配置文件:data/misc/apexdata/com.android.wifi/WifiConfigStoreSoftAp.xml
public static SoftApConfiguration parseFromXml(XmlPullParser in, int outerTagDepth,
        SettingsMigrationDataHolder settingsMigrationDataHolder)
        throws XmlPullParserException, IOException  {
            ...
case XML_TAG_VENDOR_ELEMENTS:
    if (SdkLevel.isAtLeastT()) {
        softApConfigBuilder.setVendorElements(
                SoftApConfigurationXmlUtil.p

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1707503.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Github Page 部署失败

添加 .gitmodules 文件 [submodule "themes/ayer"]path themes/ayerurl https://github.com/Shen-Yu/hexo-theme-ayer.git 添加 .nojekyll 文件

使用 Orange Pi AIpro开发板基于 YOLOv8 进行USB 摄像头实时目标检测

文章大纲 简介算力指标与概念香橙派 AIpro NPU 纸面算力直观了解 手把手教你开机与基本配置开机存储挂载设置风扇设置 使用 Orange Pi AIpro进行YOLOv8 目标检测Pytorch pt 格式直接推理NCNN 格式推理 是否可以使用Orange Pi AIpro 的 NPU 进行推理 呢&#xff1f;模型开发流程…

vue 微信公众号定时发送模版消息

目录 第一步&#xff1a;公众号设置 网页授权第二步&#xff1a;引导用户去授权页面并获取code第三步&#xff1a;通过code换取网页授权access_token&openid第四步&#xff1a;后端处理绑定用户和发送消息 相关文档链接&#xff1a; 1、微信开发文档 2、订阅号/服务号/企业…

AI生成视频解决方案,降低成本,提高效率

传统的视频制作方式往往受限于高昂的成本、复杂的拍摄流程以及硬件设备的限制&#xff0c;为了解决这些问题&#xff0c;美摄科技凭借领先的AI技术&#xff0c;推出了全新的AI生成视频解决方案&#xff0c;为企业带来前所未有的视觉创新体验。 一、超越想象的AI视频生成 美摄…

【计算机视觉(4)】

基于Python的OpenCV基础入门——色彩空间转换 色彩空间简介HSV色彩空间GRAY色彩空间色彩空间转换 色彩空间转换代码实现: 色彩空间简介 色彩空间是人们为了表示不同频率的光线的色彩而建立的多种色彩模型。常见的色彩空间有RGB、HSV、HIS、YCrCb、YUV、GRAY&#xff0c;其中最…

Sora,数据驱动的物理引擎

文生视频技术 Text-to-Video 近日&#xff0c;Open AI发布文生视频模型Sora&#xff0c;能够生成一分钟高保真视频。人们惊呼&#xff1a;“真实世界将不再存在。” Open AI自称Sora是“世界模拟器”&#xff0c;让“一句话生成视频”的AI技术向上突破了一大截&#xff0c;引…

数据恢复与取证软件: WinHex 与 X-Ways Forensics 不同许可证功能区别

天津鸿萌科贸发展有限公司从事数据安全业务20余年&#xff0c;在数据恢复、数据取证、数据备份等领域有丰富的案例经验、专业技术及良好的行业口碑。同时&#xff0c;公司面向取证机构及数据恢复公司&#xff0c;提供数据恢复实验室建设方案&#xff0c;包含数据恢复硬件设备及…

外贸仓库管理软件:海外仓效率大幅度提升、避免劳动力积压

随着外贸业务的不断发展&#xff0c;如何高效管理外贸仓库&#xff0c;确保货物顺利流转&#xff0c;订单顺利处理&#xff0c;就变得非常重要。 现在通常的解决方案都是通过引入外贸仓库管理软件&#xff0c;也就是我们常说的海外仓WMS系统来解决。 今天我们就系统的探讨一下…

闲话 .NET(3):.NET Framework 的缺点

前言 2016 年&#xff0c;微软正式推出 .NET Core 1.0&#xff0c;并在 2019 年全面停止 .NET Framework 的更新。 .NET Core 并不是 .NET Framework 的升级版&#xff0c;而是一个从头开始开发的全新平台&#xff0c;一个跟 .NET Framework 截然不同的开源技术框架。 微软为…

Paddle 稀疏计算 使用指南

Paddle 稀疏计算 使用指南 1. 稀疏格式介绍 1.1 稀疏格式介绍 稀疏矩阵是一种特殊的矩阵&#xff0c;其中绝大多数元素为0。与密集矩阵相比&#xff0c;稀疏矩阵可以节省大量存储空间&#xff0c;并提高计算效率。 例如&#xff0c;一个5x5的矩阵中只有3个非零元素: impor…

CTFHUB技能树——SSRF(一)

目录 一、SSRF(服务器端请求伪造) 漏洞产生原理: 漏洞一般存在于 产生SSRF漏洞的函数&#xff08;PHP&#xff09;&#xff1a; 发现SSRF漏洞时&#xff1a; SSRF危害&#xff1a; SSRF漏洞利用手段&#xff1a; SSRF绕过方法&#xff1a; 二、CTFHUB技能树 SSRF 1.Ht…

线上服务突然变慢,卡了很久都出不来

文章目录 0、架构1、现象2、查看服务器指标2.1 cpu负载不高2.2 内存指标2.3 硬盘指标2.4 错误日志2.5 大量的tcp连接为TIME_WAIT 3、总结 0、架构 nginx—>httpd—>postgres 单体服务 1、现象 进入页面非常慢。。。 2、查看服务器指标 2.1 cpu负载不高 如下图&…

vue3学习(三)

前言 继续接上一篇笔记&#xff0c;继续学习的vue的组件化知识&#xff0c;可能需要分2个小节记录。前端大佬请忽略&#xff0c;也可以留下大家的鼓励&#xff0c;感恩&#xff01; 一、理解组件化 二、组件化知识 1、先上知识点&#xff1a; 2、示例代码 App.vue (主页面) …

Captura完全免费的电脑录屏软件

一、简介 1、Captura 是一款免费开源的电脑录屏软件&#xff0c;允许用户捕捉电脑屏幕上的任意区域、窗口、甚至是全屏画面&#xff0c;并将这些画面录制为视频文件。这款软件具有多种功能&#xff0c;例如可以设置是否显示鼠标、记录鼠标点击、键盘按键、计时器以及声音等。此…

BookxNote Pro 宝藏 PDF 笔记软件

一、简介 1、BookxNote Pro 是一款专为电子书阅读和学习笔记设计的软件&#xff0c;支持多种电子书格式&#xff0c;如PDF和EPUB&#xff0c;能够帮助用户高效地管理和阅读电子书籍&#xff0c;同时具备强大的笔记功能&#xff0c;允许用户对书籍内容进行标注、摘录和思维导图绘…

解锁数据奥秘,SPSS for Mac/WIN助您智赢未来

在信息爆炸的时代&#xff0c;数据已成为推动社会进步和企业发展的核心动力。但如何将这些海量数据转化为有价值的洞见&#xff0c;却是摆在每一位决策者面前的难题。IBM SPSS Statistics&#xff0c;一款专业的统计分析软件&#xff0c;凭借其强大的功能和易用的界面&#xff…

机械产品3d模型网站让您的展示内容更加易于分享和传播

为助力企业3D产品演示网站获得更多曝光和展示特效&#xff0c;华锐视点3D云展平台提供强大的3D编辑引擎&#xff0c;以逼真的渲染效果&#xff0c;让您的模型展示更加生动逼真。让客户也能轻松操作的3D产品演示网站搭建编辑器&#xff0c;引领3D展示的新潮流。 3D产品演示网站搭…

总结 HTTP 协议的基本格式

一、HTTP 是什么 HTTP ( 全称为 " 超文本传输协议 ") 是一种应用非常广泛的 应用层协议 . HTTP 诞生与 1991 年 . 目前已经发展为最主流使用的一种应用层协议 . HTTP 协议目前有三个大版本: HTTP / 1 和 HTTP / 2 都是基于TCP 传输控制协议传输数据。最新版本的…

14.Redis之JAVASpring客户端

1.引入依赖 此时就会引入操作 redis 的依赖了~~ 2.yml配置 spring:redis:host: 127.0.0.1port: 8888 3.准备 前面使用 jedis,是通过 Jedis 对象里的各种方法来操作 redis 的.此处Spring 中则是通过 StringRedisTemplate 来操作 redis .最原始提供的类是 RedisTemplateStrin…

NGINX完全指南_实现高性能负载均衡的进阶实操指南

欢迎阅读 2024 版《NGINX 完全指南》。OReilly 已连续九年出版《NGINX 完全指南》&#xff0c;我们不断进行更新以跟上 NGINX 做出的诸多改进。如今&#xff0c;NGINX 是全球最受欢迎的 Web 服务器。该产品于 2004 年首次发布&#xff0c;并不断发展&#xff0c;以满足现代应用…