private void handleHideSkylight(boolean forceHide) {
   boolean isOpen = SkylightUtil.getIsHallOpen(mContext);
   if (!isOpen && !forceHide) {
     return;
   }
   mViewMediatorCallback.userActivity();
   // xfge add forceHide condition for CR01501015
   if (forceHide) destroyAcivityIfNeed();
   if (mSkylightHost != null) {
     mSkylightHost.hideSkylight();
     boolean isLockScreenDisabled = mLockPatternUtils.isLockScreenDisabled();
     boolean isSimLock = needsFullscreenBouncer();
     DebugLog.d(LOG_TAG, "handleHideSkylight  isLockScreenDisable: " + isLockScreenDisabled);
     if (isLockScreenDisabled && isOpen && !isSimLock) {
       unLockByOther(false);
     } else {
       mSkylightHost.setVisibility(View.GONE);
     }
     mIsSkylightShown = false;
     mViewMediatorCallback.adjustStatusBarLocked();
   }
   if (isShowingAndNotOccluded()) {
     startFingerIdentify();
   }
   beginStatics();
   refreshCacheScreenOn();
 }
  private void handleShowSkylight() {

    if (SkylightUtil.getIsHallOpen(mContext)) {
      return;
    }

    cancelFingerIdentify();
    if (DEBUG) {
      DebugLog.d(LOG_TAG, "showSkylight  skylight is null? " + (mSkylightHost == null));
    }
    mViewMediatorCallback.userActivity();
    if (mSkylightHost != null) {
      mSkylightHost.showSkylight();
      mSkylightHost.setVisibility(View.VISIBLE);
      mKeyguardViewHost.resetHostYToHomePosition();
      startActivityIfNeed();
      mIsSkylightShown = true;
      mViewMediatorCallback.adjustStatusBarLocked();
    }

    finishStatistics();
    // Don't clear cache when skylight be shown
    // releaseCache();
  }