通话时Psensor有时不亮屏的问

Android P添加屏保功能,如果休眠时间设定大于屏保时间,则先进入屏保,达到休眠时间后再进入休眠 需求: 1.添加屏幕互保开关,默认关闭; 2.只保留时钟,可设定指针和数字、夜间模式; 3.启用时间改多长时间无操作进入屏保,可设定1、5、10、15、30分钟; 4.如果休眠时间设定小于屏保时间,则优先进入休眠,如果休眠时间设定大于屏保时间,则先进入屏保,达到休眠时间后再进入休眠 修改后的效果 分析与实现: 1.由于Android原生系统默认进入屏保的条件是充电或插入基座时,但到达休眠时才进入... 阅读详情
         

1.当出现亮不起的时候,我们的传感器已经没有在工作(LED已经没在亮了)。

        2.从底层的log信息如下可以看到这是因为有系统调用过来关闭我们的设备,而非是我们的设备出现异常所致!

                     

解决此问题:

 

  已经在原来你们在用的驱动加入了wake lock 机制,也可以升级机器做测试,已经测试1个多小时没发现问题。加入的原因如下:

         3.从系统服务log对比差异处(下图有背色部分)

没有问题时的log:

出现问题时的log:

 

 

 

从上层代码 跟踪可以看到

这个区别是PowerManagerServer.java的 

 

 if (!updateWakefulnessLocked(dirtyPhase1))//条件不成立,造成此处的循环无法退出所致!

进入

 

    privateboolean updateWakefulnessLocked(intdirty) {

        booleanchanged = false;

        if((dirty & (DIRTY_WAKE_LOCKS | DIRTY_USER_ACTIVITY | DIRTY_BOOT_COMPLETED

                | DIRTY_WAKEFULNESS |DIRTY_STAY_ON | DIRTY_PROXIMITY_POSITIVE

                | DIRTY_DOCK_STATE | DIRTY_BOOT_IPO| DIRTY_SD_STATE)) != 0) {

            if(mWakefulness == WAKEFULNESS_AWAKE && isItBedTimeYetLocked()) {

                if(DEBUG_SPEW) {

                    Slog.d(TAG, "updateWakefulnessLocked: Bedtime...");//对应log,当能亮起时是没有此打印,说明没进入,而亮不起来时是有此打印的说明进入!

                }

                finallong time = SystemClock.uptimeMillis();

                if (shouldNapAtBedTimeLocked()){

                    changed = napNoUpdateLocked(time);

                }else{

                    changed = goToSleepNoUpdateLocked(time,

                           PowerManager.GO_TO_SLEEP_REASON_TIMEOUT);//打印 PowerManagerService: Going to sleep due to screen timeout...

                }

            }

        }

        returnchanged;

    }

从此接口可以看到 isItBedTimeYetLocked()接口为TRUE 时会亮不起来!展开此接口:

可以看到

isBeingKeptAwakeLocked()为false时会造成上面为TRUE,展开

阅读此接口的说明,可以看到此接口会在系统没有wake lock时会返回FALSE。

至于系统为什么没有wake lock,无法知悉!所以在驱动上加入此机制。

Android 4.4 Kitkat Phone工作流程浅析(十一)__PSensor工作流程浅析 本文主要分析了在InCallUI中PSensor如何控制屏幕的亮灭及其实现原理。全文分为三大部分,即:ProximitySensor初始化流程,ProximitySensor使用流程和PSensor工作流程。前两部分主要分析了上层应用如何使用PSensor提供的接口,第三部分则详细分析了PSensor如何控制屏幕的关闭/点亮。 阅读详情

相关推荐

视频监控设备(NVR、IPC等)如何通过国标GB28181接入到视频监控平台,以及接入过程如何测试视频接入是否成功

GB/T28181标准广泛的应用,视频监控设备通过国标GB28181接入视频监控平台的过程变成程序化、标准化的互联过程,确保了视频监控设备能够在不同系统、不同网络环境下实现远程、跨区域、跨级别的访问和控制。版本有GB28181-2011、2016、2022几个常用版本,威迪斯特的视频监控平台完全支持GB28181的这几个版本,能够实现不同品牌视频监控设备的国标视频接入(国标视频监控接入),或者为国标28181视频接入(国标28181视频监控接入),也为国标281818接入(国标GB/T28181接入。

weixin_70208651的博客 1万+

【Android】【TP】TP开发常见问题&分析&产线检测CTP单体异常

TP开发常见问题&分析1.TP重点关注范围以及checklist先附录上TP的内部checklist,所有在列内容都为常见问题切比较严重问题,如下:上下电时序Operating VoltageTP ic and manufacturer ID(Module ID)Check I2C SCL设置频率工厂测试项目(RAW data/短路/划线测试)TP 中断频率TP报点率tp精准度tp灵敏度重力测试悬

Bruce.yang的嵌入式之旅 9237

Ubuntu22.04安装ROS1

代表使用 2 线程进行编译,可以根据 CPU 适当调整。如果出现小乌龟窗口,说明安装成功 🎉!启动成功,则打开另一个终端,测试。需要解决一些兼容性问题,因为。由于 Ubuntu 22.04。过程,确保成功安装。

asafriend的博客 4642

Psensor driver 一(原理介绍)

(近距离传感器)采用光学原理,包含红外线发射器、红外线监测器,当没有物体遮挡时,红外线监测器监测到的是Ambient light(环境光)及Crosstalk(串扰)光线中的红外线。proximity sensor通过I2C接口和BB通信,PS功能打开,当有物体接近或离开时,会通过EINT产生中断,两路电源VDD、LED_AL,如上图,硬件连接很简单。转自:https://blog.youkuaiyun.com/u013531497/article/details/38388589。如上图所示,proximity。

小厨的博客 2789

单细胞marker基因表达密度图-(还有一个包装函数)

我们借助Nebulosa,将上面的过程包装为一个函数,还是那句话,受累麻烦的事我们来解决,您轻松即可,先看看函数参数:需要注意的是,如果你只想框选某一类celltype,理想模式是这群celltype是单独聚类的,没有散落在其他类群,否则将会全部框选,效果不好,建议使用AI/PS添加。需要注意,这里我算是投机取巧了,用了一个和这个作图毫无关系的包ggnetwork,主要的目的是用他的theme_blank()主题,一次性将所有清空,当然也可以自己慢慢写,不过有现成的,为啥不用呢?这质感不就上去了嘛。

qq_42090739的博客 1366

FPGA实现电机转速PID控制

通过纯RTL实现电机转速PID控制,包括电机编码器值读取,电机速度、正反转控制,PID算法,卡尔曼滤波,最终实现对电机速度进行控制,使其能够渐近设定的编码器目标值。

STATEABC的博客 7470

PowerManagerService灭屏超时流程-初识

文章参考 PowerManager学习笔记-Power键灭屏流程: https://juejin.cn/post/7041907301514477599 PowerManager学习笔记-Power键亮屏流程: https://juejin.cn/post/7037287967911575566 PowerManager学习笔记-Power键超时灭屏流程:https://juejin.cn/post/7049993817025413156 Android4.2之PowerManagerService设置亮度

苏法迪的专栏 2079

永磁同步电机矢量控制——电流内环前馈解耦策略

在采用永磁同步电机矢量控制时,ud和uq的指令值存在耦合项。需要对其进行解耦,目前,常用的解耦设计方法有前馈解耦、偏差解耦以及内模控制,本文主要分享电流内环前馈解耦控制策略。

a12312341ll的博客 8688

Android 8.0 手机亮灭屏

本文主要跟踪分析通过按松power键来唤醒,熄灭屏幕的逻辑。下面是一些相关类的介绍 PowerManagerService.java:简称PMS,负责Andorid系统中电源管理方面的工作。作为系统核心服务之一,主要处理系统中与power相关的计算,然后决策系统该如何反应。同时PowerManagerService与其他服务及HAL层等都有交互关系,协调power如何与系统其他模块的交互,比如没...

2139

083、多帧降噪(MFR)与VST算法:低照度场景下的信噪比提升与鬼影抑制

本文深入探讨了多帧降噪(MFR)和VST算法在低照度场景中的应用与优化。作者从实际项目案例出发,指出单帧降噪的局限性,详细分析了MFR的核心原理与工程实现中的关键环节,包括帧对齐、帧选择、融合策略和鬼影抑制等技术要点。文章特别强调VST变换对噪声均匀化的重要性,并分享了实际开发中的调试经验与参数优化技巧,如"三明治"调试法和性能平衡策略。最后指出,优秀的MFR方案需要在信噪比提升、鬼影抑制和纹理保留之间找到场景化的平衡点,建议开发者通过真实场景测试验证算法效果。全文既有理论分析,又包含丰富的实战经验和技术细

zzfmlxs的博客 121

深入解析ZYNQ PL触发PS中断:从原理到创新实践

通过本文,您不仅学会了ZYNQ PL-PS中断的基础实现,更掌握了动态优先级调整中断负载均衡等创新技术。响应延迟降低40%以上系统吞吐量提升2-3倍功耗降低30%支持更复杂的实时应用硬件是身体的骨骼,软件是流动的血液,而中断则是连接二者的神经系统。只有精确控制每一条神经冲动,才能构建真正智能的嵌入式系统。拓展思考如何将AI决策引入中断调度?能否实现跨芯片中断同步?量子计算对中断架构的挑战?

QQ_778132974的博客 416

【TP】【P-sensor】TP模拟P-sensor

Touchpanel模拟P-sensor功能简述 1.功能概述 该功能用于低端机上为降低成本而设计,利用触摸屏的感应功能,模拟p-sensor在通话时候能根据距离远近来灭屏亮屏的一种功能,从功能性角度上来说可以替代p-sensor在通话过程中防止误触的操作。但从实际意义上说,该种功能是无法代替真实的物理sensor的,无论是灵敏度还是准确性。并且会需要touchpanel牺牲灵敏度去增

Lieke的博客 5811

PCL CSF布料模拟算法【2026最新版】

CSF布料模拟地面滤波算法的PCL实现,博客长期更新,本文最近更新时间为:2026年10月26日。

点云侠的博客 3915

2022-07-02 Android 进入app 后 距离传感器控制手机屏幕熄灭的方法-接近传感器Proximity Sensor的信号

一、P-Sensor距离感应器,可以感应手机和人体距离。具体使用用途是在通话过程中打开P-Sensor,那么当手机屏幕贴近用户脸部时,就会自动感应出手机和人体距离是多少。当小于某一个值时,就会熄灭屏幕,不再接收用户触摸屏幕事件,从而有效的防止通话过程中误触摸事件的出现。二、demo ,实际测试,打开这个app后,用手遮挡距离传感器,屏幕会熄灭,手拿开后屏幕电亮,还是灭屏幕之前那个界面,跟按power键的效果不一样。 三、参考文章:Android 8.1 DisplayPowerController

海月汐辰 2151

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

探秘手机距离传感器工作背后的那些事儿

距离传感器

Fybon的专栏 2万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

PowerManagerService灭屏超时流程

PowerManagerService灭屏超时流程

Android framework 2008

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Android 8.1 DisplayPowerController(二) Proximity Sensor的亮灭屏

作者:FightFightFight 来源:优快云 原文:https://blog.youkuaiyun.com/FightFightFight/article/details/81460803 概述 P-Sensor亮屏和按Power键亮屏流程还是有些不同之处,如开始调用位置、PowerManagerService中的流程等,由于在平常遇到过许多PSensor亮屏相关Bug,因此这里独立地进行...

sdkdlwk的博客 1655

Android平台 Psensor传感器调试方法

一、 驱动层调试 1、在板级dts文件中增加相应的dts代码, 如:调试sensor类,在代码中找到已经有的代码在修改,I2C使用那根(一般为I2C3),I2C地址(找datasheet或者FAE),哪个中断引脚(看原理图)。 twsi3: i2c@d4013800 {                                 mc3xxx@4c { compatible = "m

ldinvicible的专栏 3762

android 设置休眠时间后,系统行为简析

android手机进入设置,在进入显示,有个休眠时间的选项。可以设置多久不操作后熄灭屏幕。android熄灭屏幕实际根据系统当前wakeLock锁的数量和类型有关,本篇文章不讨论这个问题。只是本人发现了一个奇怪的现象: 1.设置休眠时间为1分钟,在launcher界面不做任何操作,大概一分钟左右灭屏,和设置中时间相同。 2.灭屏后按电源键唤醒屏幕,在锁屏界面不做任何操作,感觉十秒左右屏

woshihongliu的博客 6345

android——PowerManagerService源码分析

http://blog.youkuaiyun.com/king1425/article/details/70224476 电源管理架构 Android电源管理主要是通过wakelock机制来管理系统的状态,整个android电源管理可以分为四层: 应用接口层:PowerManager中开放给应用一系列接口,应用可以调用PM的接口申请wakelock,唤醒系统,使系统进入睡眠等操作; Fra

ffmxnjm的博客 1389

飞腾计算机硬件测试方法,银河麒麟操作系统

银河麒麟操作系统与Ubuntu的测试工具兼容性很高,在飞腾计算机设备开发时,常用的温度监测、GPU测试、CPU压力测试、CPU使用率监控、网络通信监控、串口通信测试工具及安装方法如下,均经过本人亲测可用。

weixin_47587492的博客 7403

Android7.0 PowerManagerService(3) 核心函数updatePowerStateLocked的主要流程

前面的博客中,我们已经分析过,当Android中的进程要使用电量时,需要向PMS申请WakeLock;当进程完成工作后,需要释放对应的WakeLock。 PMS收到申请和释放WakeLock的请求后,均需要调用updatePowerStateLocked来更新电源的状态,该函数是PMS的核心方法。 接下来,我们就结合代码,看一下updatePowerStateLocked的工作流程。

橡果生长记的博客 6026

Android4.2中Phone的P-sensor的应用的分析。

先说现象,现象就是来电话,接通电话,把手机屏幕靠近脸部,遮挡住P-sensor,屏幕变黑了,不遮挡住P-sensor,屏幕就点亮了。接着我们来看看代码流程。 先来说说靠近P-sensor,不灭屏的正常的现象: 插入耳机 打开扬声器 打开蓝牙耳机 链接蓝牙键盘 步骤一:在PhoneGlobals.java文件中onCreate()方法中: 。。。 。。。 // lock u...

caobihole 276

android psensor测试,WakeLock

adbshelldumpsyspowerhttp://blog.youkuaiyun.com/yihongyuelan/article/details/43449851//*** Wake lock level: Turns the screen off when the proximity sensor activates.* * If the proximity sensor detects tha...

weixin_42565652的博客 394

android psensor测试,MTK camera驱动结构

和你一起终身学习,这里是程序员 Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、概述MTK camera主要的内容在hal层,现在有hal1/hal3,当下主流的使用的是hal3,驱动主要负责sensor电源的控制以及sensor相关寄存器的操作,MTK采用设备和驱动分离的思想,抽象出imgsensor.c来控制sensor的上下电以及sensor具体的操作,结构图如下:程序员A...

weixin_42303955的博客 1336

android P-Sensor 电话时 亮屏和熄灭

Android亮屏和熄屏控制 http://bbs.51cto.com/thread-1018050-1.html

937
上一篇: 音频文件存在路径
下一篇: 地磁感应器逆时针90度
TopicDev
博客等级 码龄14年 128粉丝 111原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值