手机知道
  • 知道
  • 游戏
  • 软件
  • 机型
手机世界 手机知道 全部问题 手机设置 三星S4距离感应器失效怎么办?

三星S4距离感应器失效怎么办?

我的手机黑屏后无法自动点亮屏幕了,怎么办?要如何解决呢?
2016-07-16 11:34 添加评论
0

hellomoto

赞同来自:

  楼主你好,感应器是通过测量距离、返回数值来命令手机黑屏或点亮的。理论上距离感应器测量返回的数值是0——255,即毫无遮挡的理想数值是0,全部遮挡返回数值255。此刻我简单的猜测其原理,三星设定了一个临界数值,例如45:
  1、 当数值低于45时(0——45),认为屏幕附近没有遮挡,此刻屏幕远离面部,于是屏幕点亮。
  2、 当数值高于45时(46——255),认为屏幕附近有遮挡,此刻屏幕靠近面部,于是屏幕熄灭。
  在手机使用一段时间后,因为油污,灰尘等原因,使得感应器被污物部分遮挡,于是感应器变得只能测到51——255(假定)的范围。因为51>45,所以屏幕一旦熄灭就再也不会点亮。
  此时我们只需提高这个三星设定的临界数值(例如将45改为58),使之处在感应器能测到的范围(51——255)中,即将屏幕点亮的范围扩大,就能简单、无损,彻底的,通过设置参数来解决问题。
  【解决办法】
  步骤1:手机端安装超级终端或者手机连接adb,并且具有root权限。
  步骤2:打开adb shell ,输入命令:
  su回车
  echo空格0空格>空格/sys/devices/virtual/sensors/proximity_sensor/prox_cal回车
  echo空格1空格>空格/sys/devices/virtual/sensors/proximity_sensor/prox_cal回车
  如果没有返回任何错误信息,则继续
  步骤3:用手完全遮挡距离传感器
  输入
  cat空格/sys/devices/virtual/sensors/proximity_sensor/state一只手完全遮挡距离传感器,一只手回车
  返回 255或其他数,无所谓
  步骤4:把手拿开再次输入上面命令
  返回51(我的是23),也可能是其他数据,只要小于上次数据就ok,记下这个数
  步骤5:输入
  cat空格/sys/devices/virtual/sensors/proximity_sensor/prox_cal回车
  返回0,60,44三组数字,记下0,也就是第一组(我返回的第一组居然是45,可见感应器的问题)
  步骤6:将步骤4和步骤5记下的数字相加,51+0=51(我的是23+45=68),将51(我的是68)转为16进制数结果为33(我转换为44),如果你觉得51不靠谱也可以适当增大,我取的是55,十六进制就是37(我最终取的是47)。
  步骤7:输入
  echo空格-en空格$'\x37'空格>空格/efs/prox_cal回车
  \x后面是你计算出的十六进制数字(我最终取的是47),注意en前面有一个“-”
  继续输入
  chown空格system:system空格/efs/prox_cal回车
  chmod空格644空格/efs/prox_cal回车
  sync回车
  reboot回车
  等待重启完成,再试试距离传感器,是不是好了。
2016-07-16 11:39 添加评论
手机有问题请扫微信

要回复问题请先登录注册