锁屏后5分钟还是收不到消息,但是时间不长的话  锁屏后可以收到消息用wakelock Android锁屏状态下保持后台唤醒   但是不管用 
  @Override
    protected void onPause() {
        super.onPause();
//        handler.postDelayed(bluetooth, TIME);   //4分钟执行一次
        releaseWakeLock();
    }
 // 释放设备电源锁
    private void releaseWakeLock() {
        if (null != wakeLock && wakeLock.isHeld()) {
            Log.i("WakeLock", "call releaseWakeLock");
            wakeLock.release();
            wakeLock = null;
        }
    } @Override
    protected void onResume() {
        super.onResume();
        acquireWakeLock();
    }
 /**
     * 获取电源锁,保持该服务在屏幕熄灭时仍然获取CPU时,保持运行
     */
    private void acquireWakeLock() {
        if (null == wakeLock) {
            PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
            wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK
                    | PowerManager.ON_AFTER_RELEASE, getClass()
                    .getCanonicalName());
            if (null != wakeLock) {
                Log.i("WakeLock", "call acquireWakeLock");
                wakeLock.acquire();
            }
        }
    }
   

解决方案 »

  1.   

    系统版本  EMUI4.0.3   系统6.0.1
    荣耀8(EMUI5.0.1  系统7.0)上测试   没有任务问题
      

  2.   

    用1像素保活的方法   也没有起到作用
    https://www.jianshu.com/p/ef4a9531bc15
      

  3.   

    思路:AlarmManager利用闹钟定时发送广播配合PowerManager是CPU不休眠,接收到广播唤醒屏幕并解锁,然后在  利用锁屏的方法     此时的瑕疵是  屏幕会闪一下,但是一切服务,广播正常工作。
      

  4.   

    cordova开发也遇到这个问题了
    我解决了