三星S4 距离传感器失灵的解决方法(手动校准阀值)

最近听到论坛上有很多网友反映S4听筒处进灰或是贴了钢化膜之后,导致距离传感器失灵,无法在通话结束后亮屏。测试方法是拨号键盘按*#0*#选择Sensor查看第二项里面ADC的数值(0-255),如果是大于50就说明可能存在这个问题(本人是因为贴了钢化膜出现问题的,不想重新贴膜),解决方法很简单,不用拆机,直接在手机中手动修改一下距离传感器阀值参数就可以了。下面是修改方法:(请保证你的手机已root)
1.用*#0*#测出你的ADS数值,比如55,记住这个数值;
2.用RootExplorer文件管理器打开/sys/devices/virtual/sensors/proximity_sensor/prox_cal文件,看到类似1,14,54,记住第一组数字,这里是1;
3.将第一、二步骤中的两个数字相加,55+1=56,将56转为16进制数结果为38,记住这个数值;
4.用RootExplorer文件管理器在efs目录下创建一个prox_cal文件,在里面写入$’x38’保存,修改权限为rw-r–r–(其实这步还可以直接复制步骤2中的prox_cal文件,删除所有内容,再写入$’x38’保存,这样就不用修改权限,也方便一点)
5.重启
6.再用*#0*#测试一下,ADS数值不变或者变化不大,但是手机不再震动,屏幕不再变绿,只有用手机档住距离传感器才震动,屏幕变绿,此时说明距离传感器阀值已经修改好,通话结束后会自动亮屏的功能又正常了。
说明:此方法是参考xda上的帖子。因为三星没有校准程序,所以只能手动校准了。
内容转自机锋论坛:http://bbs.gfan.com/android-7160399-1-1.html