downloadFileByShareToken method

  1. @override
Future<String> downloadFileByShareToken({
  1. required String shareToken,
  2. required String localPath,
})
override

Downloads a file to localPath using a shareToken.

Implementation

@override
Future<String> downloadFileByShareToken(
    {required String shareToken, required String localPath}) {
  return _executeRequest(() async {
    final output = File(localPath);
    final sink = output.openWrite();
    try {
      // Download the file directly using its ID (shareToken).
      final media = await driveApi.files.get(shareToken,
          downloadOptions: drive.DownloadOptions.fullMedia) as drive.Media;
      await media.stream.pipe(sink);
    } finally {
      await sink.close();
    }
    return localPath;
  });
}