@Override
 public void onDestroy() {
   super.onDestroy();
   if (mMediaProjection != null) {
     mMediaProjection.stop();
     mMediaProjection = null;
   }
 }
예제 #2
0
  @CalledByNative
  public void stopCapture() {
    Log.d(TAG, "stopCapture");
    synchronized (mCaptureStateLock) {
      if (mMediaProjection != null && mCaptureState == CaptureState.STARTED) {
        mMediaProjection.stop();
        changeCaptureStateAndNotify(CaptureState.STOPPING);
      }

      while (mCaptureState != CaptureState.STOPPED) {
        try {
          mCaptureStateLock.wait();
        } catch (InterruptedException ex) {
          Log.e(TAG, "ScreenCaptureEvent: " + ex);
        }
      }
    }
  }
예제 #3
0
 private void stopProjection() {
   if (mMediaProjection != null) mMediaProjection.stop();
   if (mVirtualDisplay != null) mVirtualDisplay.release();
   mImageView.setImageResource(R.mipmap.ic_launcher);
 }