无法将视频保存到应用程序目录 - Flutter

Can't save video to Application directory - Flutter

我正在开发一个应用程序,我想在其中录制视频以将时间戳作为名称归档。据我了解,您应该能够使用返回的 XFile 并使用 saveTo 函数。我收到一个对我来说确实很奇怪的错误。

这是我保存视频的代码:

void onStopRecordingButtonPressed() {
    stopVideoRecording().then((video) async {
      if (video != null) {
        final path = await _localPath;
        final file = File('$path/${timestamp() + ".mp4"}');
        await file.create(recursive: true);
        print("video path " + video.path.toString());
        print("VideoFile: " + video.name.toString());
        print("Desired path: " + file.toString());
        var fileExists = await file.exists();
        if (fileExists) {
          print("fileExists");
        } else {
          print("No, this does not exist");
        }
        video.saveTo(file.toString());
      }
    });
  }


Future<XFile?> stopVideoRecording() async {
    final CameraController? cameraController = controller;
    if (cameraController == null || !cameraController.value.isInitialized) {
      return null;
    }

    try {
      return cameraController.stopVideoRecording();
    } on CameraException catch (e) {
      _showCameraException(e);
      return null;
    }
  }

这是输出:

flutter: video path /var/mobile/Containers/Data/Application/3339192C-B309-4E08-8017-FFBD735CA576/Documents/camera/videos/REC_4525E32A-81C0-42BA-A3A4-48E325E44E58.mp4
flutter: VideoFile: REC_4525E32A-81C0-42BA-A3A4-48E325E44E58.mp4
flutter: Desired path: File: '/var/mobile/Containers/Data/Application/3339192C-B309-4E08-8017-FFBD735CA576/Documents/1652533015054.mp4'
flutter: fileExists <-- Exists
open on File: '/var/mobile/Containers/Data/Application/3339192C-B309-4E08-8017-FFBD735CA576/Documents/1652533015054.mp4': No such file or directory <-- So how can this be?
Application finished.

XFile.toString()是对象的字符串表示,不是路径。

File: '/var/mobile/Containers/Data/Application/3339192C-B309-4E08-8017-FFBD735CA576/Documents/1652533015054.mp4'

尝试这样的事情:

video.saveTo(file.path);