切换数据失败0x1671分析

1、问题背景

        切换双卡数据开关,无法切换成功,且单机必现该问题

2、问题分析

    搜索Log发现相关拨号无法建立成功,返回0x1671,无法建立PDN连接。

 

相关拨号上层未下发相关AT命令,属于上层报错,并非网络问题,相关具体在代码RtcDataController.cpp的函数enqueueForPreferredDataMode中上报。

其中RFX_STATUS_KEY_SLOT_ALLOW表示当前RILD当前DDS,如果是当前DDS,这个SETUP_DATA_CALL下发到RILD的下一层,否者直接返回错误。那说明当前DDS没有更新,导致了问题。

对比正常切换和异常切换的Log分析。

正常Log

异常Log

异常Log在切换DDS时实际是没有切换的

从Log可以看到虽然上层都下发了> SET_PREFERRED_DATA_MODEM

并且RILD都回复了< SET_PREFERRED_DATA_MODEM 但是实际DDS确没有切换。相关切换流程总结如下。

红色框为问题出现的地方。查看相关代码

红色框为问题出现的地方。查看相关代码

说明mOnDemandQueue请求中还有相关请求在处理,导致无法下发切换DDS。最终在框架层发现如下异常请求,包名为“com.tencent.android.qqdownloader”,但是请求的能力没有Internet能力,只有BANDWITH和PRIORITIZE_LATENCY能力。卸载相关APP后问题恢复。

3、对比测试

        发现5G手机发现无此问题,原因在于5G modem支持有区别

相关代码区别在于EDataSimSupported是支持的,在5G平台

相关AT命令如下

4、解决方案

针对无APN相关的请求不要放入相关队列。

        由于 PRIORITIZE_LATENCY  PRIORITIZE_BANDWIDTH 与5G切片强相关,建议修改是加上5G能力判断。

5、延展验证

     抓取MTK 副卡发彩信流程

        0x1671实际为MTK设计的流程,当SETUP_DATA_CALL请求存在时,不允许相关DDS下发切换。如果只是临时的报错,可以忽略,如果一直上报错误,需要check相关拨号逻辑。

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

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

相关文章

AI有关的学习和python

一、基本概念 AIGC&#xff08;AI Generated content AI 生成内容&#xff09; AI生成的文本、代码、图片、音频、视频。都可以成为AIGC。 Generative AI&#xff08;生成式AI&#xff09;所生成的内容就是AIGC AI指代计算机人工智能&#xff0c;模仿人类的智能从而解决问题…

解读:基于图的大模型提示技术

【引子】大模型的兴起&#xff0c; 使得读论文成为了学习中的一种常态。如果一篇论文没有读懂&#xff0c;不用担心&#xff0c;可以再读一篇该领域内容相近的论文&#xff0c;量变可能会产生质变。就像编程语言一样&#xff0c;你永远无法精通一门编程语言&#xff0c;除非&am…

为什么idea建议使用“+”拼接字符串

今天在敲代码的时候&#xff0c;无意间看到这样一个提示&#xff1a; 英文不太好&#xff0c;先问问ChatGPT&#xff0c;这个啥意思&#xff1f; IDEA 提示你&#xff0c;可以将代码中的 StringBuilder 替换为简单的字符串连接方式。 提示信息中说明了使用 StringBuilder 进行…

独孤思维:长线副业,越做越香

01 独孤从开始做第一个短视频开始&#xff0c;就做好了长线作战的准备。 IP的短视频&#xff0c;尤其是如今这么卷的情况下&#xff0c;独孤并不期望短时间内涨粉&#xff0c;甚至变现。 还是站在长期主义角度上&#xff0c;去看到短视频。 就如同&#xff0c;独孤做日更写…

nodejs的mysql事务,行锁,表锁

使用事务&#xff08;Transactions&#xff09;&#xff1a; 在 MySQL 中&#xff0c;事务&#xff08;Transaction&#xff09;可以确保一组操作要么全部成功&#xff0c;要么全部失败和回滚&#xff0c;从而保持数据的一致性。使用 connection.beginTransaction() 开始事务&a…

Android APP 音视频(01)MediaCodec解码H264码流

说明&#xff1a; 此MediaCodec解码H264实操主要针对Android12.0系统。通过读取sd卡上的H264码流Me获取视频数据&#xff0c;将数据通过mediacodec解码输出到surfaceview上。 1 H264码流和MediaCodec解码简介 1.1 H264码流简介 H.264&#xff0c;也被称为MPEG-4 AVC&#xff…

SCADA系统智能化管理工厂 操作方便易于使用

SCADA系统是将工厂进行智能化升级的专业系统&#xff0c;可根据需求与预算定制&#xff0c;从多设备的采集、数据的显示、数据可视化展示、分析图像、边缘计算、协议解析、数据转发、数据清洗、数据转换、数据存储、数据传输等等&#xff0c;各种功能均可根据实际需求进行定制&…

如何在测试中保护用户隐私!

在当今数据驱动的时代&#xff0c;用户隐私保护成为了企业和开发团队关注的焦点。在软件测试过程中&#xff0c;处理真实用户数据时保护隐私尤为重要。本文将介绍如何在测试中保护用户隐私&#xff0c;并提供具体的方案和实战演练。 用户隐私保护的重要性 用户隐私保护不仅是法…

Spring MVC 应用分层

1. 类名使⽤⼤驼峰⻛格&#xff0c;但以下情形例外&#xff1a;DO/BO/DTO/VO/AO 2. ⽅法名、参数名、成员变量、局部变量统⼀使⽤⼩驼峰⻛格 3. 包名统⼀使⽤⼩写&#xff0c;点分隔符之间有且仅有⼀个⾃然语义的英语单词. 常⻅命名命名⻛格介绍 ⼤驼峰: 所有单词⾸字⺟…

centos7 mysql 基本测试(7)主从并行简单测试

centos7 mysql 基本测试&#xff08;7&#xff09;主从并行简单测试 重启MySQL服务使配置生效。 注意&#xff1a;并行复制需要slave的硬件资源充足&#xff0c;并且确保网络通信和IO性能不是瓶颈。不是所有的应用场景都适合并行复制&#xff0c;比如写密集型应用或者slave负…

使用api 调试接口 ,配置 Header 、 body 远程调试 线上接口

学习目标&#xff1a; 目标 使用api 调试接口 &#xff0c;配置 Header 、 body 远程调试 线上接口 学习内容&#xff1a; 内容 设置请求方式 2. 选择 POST 提交 3.设置 Header 一般默认的 4个 header 属性就可以直接使用&#xff0c;如有特殊情况&#xff0c;需进行属性设…

『 Linux 』信号的捕捉及部分子问题

文章目录 信号的捕捉sigaction函数未决信号集的置零时机信号处理过程的阻塞可重入函数volatile 关键字SIGCHLD 信号 信号的捕捉 该图为基于信号处理为用户自定义动作的图解; 信号的捕捉 当一个信号被递达时,如果该信号的处理动作是用户自定义的函数(如int sighandler(int))时就…

【AWS基础】AWS服务介绍与基本使用

AWS基础&#xff1a;AWS服务介绍与基本使用 目录 引言AWS概述AWS的核心服务 计算服务存储服务数据库服务网络服务管理和监控服务 AWS的基本使用 创建AWS账户使用EC2实例使用S3存储配置RDS数据库设置VPC网络 AWS的优势AWS的应用场景结论 引言 亚马逊网络服务&#xff08;AWS&…

文物实时状态监控的保护系统

文物是宝贵的历史遗产和文化瑰宝&#xff0c;其保护是我们共同的责任。为了实现文物的安全保护&#xff0c;现代科技提供了各种环境监测设备&#xff0c;可以实时监控文物的状态并采取相应的保护措施。本文将介绍一种利用各种环境监测设备实现文物实时状态监控的保护系统。 一…

【视频讲解】ResNet深度学习神经网络原理及其在图像分类中的应用|附Python代码

全文链接&#xff1a;https://tecdat.cn/?p37134 原文出处&#xff1a;拓端数据部落公众号 分析师&#xff1a;Canglin Li 本文深入探讨了卷积层&#xff08;Convolutional Layer&#xff09;在深度学习框架中的核心作用与操作机制&#xff0c;并分析了其在特征提取、网络构…

近期代码报错解决笔记

1.TypeError: ‘bool’ object is not callable 想print("Type of head:", type(entity_emb[head]))&#xff0c;结果报如下错误&#xff1a; 源代码&#xff1a; 因为 print 仍然被当作一个布尔值处理&#xff0c;而不是作为函数调用。这个问题的根源在于 print …

Android SurfaceFlinger——纹理的绘制流程(二十八)

在系统开机动画的播放流程中,会从给定的资源文件中加载纹理数据并初始化一个 OpenGL 纹理对象,这里我们就来解析软件模拟纹理的绘制流程。 一、纹理概述 在 Android 的 SurfaceFlinger 系统组件中,纹理(Texture)是一个核心概念,特别是在涉及到图形渲染和显示的过程中。 …

关于TS(typescript)的理论知识

关于TS&#xff08;typescript&#xff09;的理论知识 TypeScript 是一种由微软开发的开源编程语言&#xff0c;它是 JavaScript 的一个超集&#xff0c;添加了可选的静态类型和基于类的面向对象编程。TypeScript 最终会被编译成纯 JavaScript 代码&#xff0c;以便在任何支持 …

Adobe Photoshop(Ps)安装包软件下载

一、Adobe Photoshop简介 Adobe Photoshop&#xff08;简称PS&#xff09;是由Adobe Systems公司开发的图像处理软件&#xff0c;它是一款集图像扫描、编辑修改、图像制作、广告创意、图像输入与输出于一体的图形图像处理软件。广泛应用于专业测评、平面设计、广告摄影、影像创…

MongoDB多数据源配置与切换

在MongoDB中配置和使用多数据源主要涉及以下几个步骤&#xff1a; 定义多个数据源的配置&#xff1a; 在应用程序的配置文件中&#xff0c;定义多个MongoDB的数据源&#xff0c;例如在Spring Boot中可以通过application.yml或application.properties文件进行配置。 创建多个Mo…