在通话期间禁用Android中的自动屏幕关闭功能

时间:2016-07-10 02:55:54

标签: android android-intent broadcastreceiver

我有一个服务可以启动" BroadcastReceiver"在用户完成引导(ACTION_BOOT_COMPLETED)之后以及设备进入休眠状态(ACTION_SCREEN_OFF)之后。我的" BroadcastReceiver"检查何时收到来电(TelephonyManager.CALL_STATE_RINGING)并启动"服务"记录通话。它正在工作,但问题是当我把手机放到耳边时,我的设备在通话期间关闭了显示器,因此该服务再次启动" BroadcastReceiver"。有人知道如何解决它吗?

public class MyService extends Service {

private BroadcastReceiver mReceiver;

@Override
public void onCreate() {
    IntentFilter filter = new IntentFilter(Intent.ACTION_BOOT_COMPLETED);
    filter.addAction(Intent.ACTION_SCREEN_OFF);

    mReceiver = new MyReceiver();
    registerReceiver(mReceiver, filter);
}

1 个答案:

答案 0 :(得分:0)

这应该是不可能的,因为电话应用程序在forground中并且如果它检测到接近事件附近时触发显示。你可以设置一个唤醒锁,然后释放它。