一、现象说明
手机去电,遮挡sensor,手机灭屏,移开遮挡后手机依旧屏灭状态.
或者挡住手机后,手机依旧亮屏状态。
二、解决方案
这类问题,先排除是否p-sensor的影响,如果p-sensor报的距离没问题,
还有此类问题发生,一般是因为下面的原因。
因为DisplayManagerService处理量灭屏的逻辑需要时间,如果
p-sensor报的快,就会导致最后处理状态的混乱。
此类问题,跟下面两个参数有关系
代码位置如下:
/frameworks/base/services/core/java/com/android/server/display/DisplayPowerController.java
privatestaticfinalintPROXIMITY_SENSOR_POSITIVE_DEBOUNCE_DELAY=0;
privatestaticfinalintPROXIMITY_SENSOR_NEGATIVE_DEBOUNCE_DELAY=250;
解决方法如下:
1:亮屏慢
调短 PROXIMITY_SENSOR_NEGATIVE_DEBOUNCE_DELAY
2:不亮屏
调长PROXIMITY_SENSOR_NEGATIVE_DEBOUNCE_DELAY
3:不灭屏
调长PROXIMITY_SENSOR_POSITIVE_DEBOUNCE_DELAY
注意: 亮屏慢和不亮屏是相克的解决方法,所以尽量调整
PROXIMITY_SENSOR_NEGATIVE_DEBOUNCE_DELAY到平台
合适的平衡值,这样不至于不亮屏问题复现,也不至于亮屏太慢。