" PROXIMITY_SCREEN_OFF_WAKE_LOCK"" PROXIMITY_SCREEN_OFF_WAKE_LOCK"用于关闭屏幕,仅限三星手机

时间:2017-12-28 06:35:27

标签: java android debugging

我正在研发基于SIP的音频/视频通话应用程序,并在三星手机上面临一个奇怪的问题

问题在于,在应用程序内呼叫(启用省电模式)期间,一旦触发接近传感器关闭屏幕,设备的麦克风/扬声器就会切断,当手机离开脸部时(屏幕打开)然后立即麦克风/扬声器恢复生命。

经过一些故障排除后,当屏幕关闭时,手机正在切断应用程序的所有网络访问,导致扬声器和麦克风停电。

这是我用来在通话过程中关闭屏幕的实现:

screenLock = ((PowerManager) context.getSystemService(POWER_SERVICE)).newWakeLock(
                PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "TAG");
        screenLock.acquire();

并使用此功能重新打开屏幕:

if (screenLock != null && screenLock.isHeld())
        screenLock.release();

有关如何解决这个问题的任何想法?只有在启用节电模式时,才会在三星手机上进行此操作。

tl; dr 在应用内呼叫期间,当接近传感器触发时网络被禁用,并且当接近唤醒锁定被释放时网络恢复正常

0 个答案:

没有答案