在通知中使用 ACTION_SCREEN_ON 奇怪的行为

Using ACTION_SCREEN_ON weird behavior on notifications

我有一个广播接收器,如果屏幕打开,它会收到消息,并弹出 activity。

但是当屏幕打开时,通过通知(主要是呼叫) activity 将尝试呼叫但会被锁屏阻止,并且呼叫将作为通知,而不是试图接听电话的屏幕。

有没有办法让我的广播接收器只识别锁屏是否打开?

我的广播接收器现在看起来是这样。

public class MyService extends Service {

    BroadcastReceiver bd;
    public MyService() {
    }

    class ScreenReceiver extends BroadcastReceiver {


        @Override
        public void onReceive(Context context, Intent intent) {
            Intent startupIntent = new Intent(context, ScreenJump.class);
            startupIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(startupIntent);
        }
        public ScreenReceiver()
        {

        }
    }

    @Override
    public void onCreate()
    {
        super.onCreate();

        IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
        bd = new ScreenReceiver();
        registerReceiver(bd, filter);

    }

尝试Intent.ACTION_USER_PRESENT

广播动作:当设备唤醒后用户在场时发送(例如,当键盘锁消失时)。 http://developer.android.com/reference/android/content/Intent.html#ACTION_USER_PRESENT