Flutter - 以隐形模式保存音频/视频文件,类似于 Spotify/Youtube(离线下载)

Muk*_*ogi 6 audio video flutter

我正在使用 Flutter 并开发离线下载媒体等模块。

我得到了一些视频 DRM 工具的解决方案,例如 https://www.vdocipher.com/,但我想将其实现为音频。

我所知道的存储和隐藏媒体的最简单方法如下,但如果我打开显示隐藏文件,它将可见。

static Future<File> downloadAudioFile(String audioUrl) async {
    var hiddenFolder = '.nomedia';

    var directoryExternal = await getExternalStorageDirectory();
    final dir = Directory('${directoryExternal!.path}/$hiddenFolder');
    if ((await dir.exists())) {
    } else {
      dir.create();
    }
    final http.Response responseData = await http.get(Uri.parse(audioUrl));
    var uint8list = responseData.bodyBytes;
    var buffer = uint8list.buffer;
    ByteData byteData = ByteData.view(buffer);

    String fileName = audioUrl.split('/').last;
    File file = await File('${dir.path}/.${fileName}').writeAsBytes(
        buffer.asUint8List(byteData.offsetInBytes, byteData.lengthInBytes));
    return file;
  }
Run Code Online (Sandbox Code Playgroud)

我想对音频和视频文件执行此操作,如果有人对此有想法,请告诉我。