Android距离传感器unregisterListener无用解决

来源:互联网 发布:安卓手机数据恢复软件下载 编辑:程序博客网 时间:2024/05/20 04:48

菜鸟进场,方圆十里,寸草不生

问题描述
实现一个功能,语音通话过程中进行贴脸息屏,实现很简单,网上有代码。问题是,在通话结束之后调用sensorManager.unregisterListener(listener)方法没用,就算页面关闭的还是会有息屏作用,只有通过系统清理功能进行清理才能结束这个功能。

网上这方面的资料很少,好像遇见这个问题的人不多。有一个说法是说在注册传感器时重复了导致关闭的时候关不掉。所以我写了个时间判断,间隔少于1秒不在注册,可是没用。然而菜鸟也不懂什么高深的技巧,只有百度找啊。

然后偶然看到有个前辈的一句话:

这里写图片描述

这不是跟我的问题一样吗?
难道我的localWakeLock没释放?

这里写图片描述

MMP,释放的呀!什么情况?要不再关一次?

这里写图片描述

哦,虽然不知道什么原理,但是问题解决了。而且这样之后onSensorChanged方法都不再调用了,推测的话应该是传感器释放了吧,会有什么后果不是很清楚。

如果有大神知道什么原因或知道更好的方法,请告知,提前谢谢了!