@Override
  protected void onPause() {
    super.onPause();
    //	removeWindow();
    kl.reenableKeyguard();
    unregisterReceiver(mWifiReceiver);
    unregisterReceiver(mPowerBroadcastReceiver);
    sensorManager.unregisterListener(lsn);
    mWifiHandler.removeMessages(WIFI_MSG_SCAN);
    Log.d(TAG, " __________________---------- oldBrightness = " + oldBrightness);

    switch (mRecorder.state()) {
      case Recorder.IDLE_STATE:
        mRecorder.delete();
        break;
      case Recorder.PLAYING_STATE:
        mRecorder.stop();
        mRecorder.delete();
        break;
      case Recorder.RECORDING_STATE:
        mRecorder.stop();
        mRecorder.clear();
        break;
    }
    mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mOldVolume, 0);
    if (mSpeakerOn) {
      mAudioManager.setSpeakerphoneOn(false);
    }
    //		unregisterReceiver(mPowerBroadcastReceiver);
  }
  @Override
  public void onPause() {
    if (mKeyguardLock != null) {
      mKeyguardLock.reenableKeyguard();
    }

    mWakeLock.releaseWakeLock();
    super.onPause();
  }
  @Override
  public void onResume() {
    super.onResume();
    KeyguardManager mKeyGuardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
    mKeyguardLock = mKeyGuardManager.newKeyguardLock("screenunlock");
    mKeyguardLock.disableKeyguard();

    mWakeLock = new WakeLockManager(getBaseContext());
    mWakeLock.setWakeLock(true, true);
  }
  @Override
  public void onReceive(Context ctx, Intent intent) {
    // Unlock device screen
    PowerManager pm = (PowerManager) ctx.getSystemService(Context.POWER_SERVICE);
    WakeLock wl =
        pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "TAG");
    wl.acquire(30 * 1000);

    mKeyGuardManager = (KeyguardManager) ctx.getSystemService(Context.KEYGUARD_SERVICE);
    KeyguardLock mLock = mKeyGuardManager.newKeyguardLock("com.inostudio.alar_clock");
    mLock.disableKeyguard();

    // Create notification
    creatNotification(ctx);

    // Start dialog
    Intent dialog = new Intent();
    dialog.setClassName("com.inostudio.alarm_clock", "com.inostudio.alarm_clock.RootActivity");
    dialog.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    ctx.startActivity(dialog);

    // release screen
    wl.release();
  }
 @Override
 public void onStart(Intent intent, int startId) {
   PowerManager pm =
       (PowerManager) getApplicationContext().getSystemService(Context.POWER_SERVICE);
   wakeLock =
       pm.newWakeLock(
           (PowerManager.SCREEN_BRIGHT_WAKE_LOCK
               | PowerManager.FULL_WAKE_LOCK
               | PowerManager.ACQUIRE_CAUSES_WAKEUP),
           "WAKEUP");
   wakeLock.acquire();
   KeyguardManager keyguardManager =
       (KeyguardManager) getApplicationContext().getSystemService(Context.KEYGUARD_SERVICE);
   keyguardLock = keyguardManager.newKeyguardLock("KEYBOARD DISABLE");
   keyguardLock.disableKeyguard();
   Log.e("SERVCE", "STARTED");
   Toast.makeText(getApplicationContext(), "STARTED SERVICE", Toast.LENGTH_SHORT).show();
   SystemClock.sleep(5000);
   stopSelf();
 }
  @Override
  protected void onResume() {
    super.onResume();
    updateMemoryStatus(flash_path);
    kl.disableKeyguard();
    //        addWindow();
    IntentFilter localIntentFilter = new IntentFilter();
    localIntentFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
    localIntentFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
    localIntentFilter.addAction(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION);
    registerReceiver(mWifiReceiver, localIntentFilter);
    Log.i("Jeffy-------", "try to enable wifi");
    mWifiTestView.setStatus(TEST_STATUS.TESTING);
    mWifiManager.setWifiEnabled(true);

    mSDcardTestView.setStatus(TEST_STATUS.TESTING);
    if (testSdcard()) {
      mSDcardTestView.setStatus(TEST_STATUS.SUCCEED);
    } else {
      mSDcardTestView.setStatus(TEST_STATUS.FAILED);
    }

    mUsbHostTestView.setStatus(TEST_STATUS.TESTING);
    if (testUSBHost()) {
      mUsbHostTestView.setStatus(TEST_STATUS.SUCCEED);
    } else {
      mUsbHostTestView.setStatus(TEST_STATUS.FAILED);
    }

    Sensor sensors = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    sensorManager.registerListener(lsn, sensors, SensorManager.SENSOR_DELAY_NORMAL);

    SurfaceHolder holder = mSurfaceView.getHolder();
    holder.addCallback(this);
    holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

    registerReceiver(mPowerBroadcastReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
  }
 @Override
 public void onDestroy() {
   Toast.makeText(getApplicationContext(), "STOPED SERVICE", Toast.LENGTH_SHORT).show();
   Log.e("SERVCE", "STOPED");
   keyguardLock.reenableKeyguard();
 }