close method
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();
}