close method

Future<void> close()

Release all resources — camera, detector, stream, listeners.

Implementation

Future<void> close() async {
  _isClosed = true;
  _lockTimer?.cancel();
  _unlockTimer?.cancel();

  if (_cameraController?.value.isStreamingImages ?? false) {
    await _cameraController?.stopImageStream();
  }

  // Only dispose the controller we created internally.
  if (cameraController == null) {
    await _cameraController?.dispose();
  }

  await _faceDetector?.close();

  await _streamController.close();
  dispose();
}