我们可以在isolate中运行Flutter Better Player preCache方法吗?

问题描述 投票:0回答:1

我正在使用 better_player 包来获取应用程序中的视频列表。该包提供了 preCache 方法来缓存视频。所以只是一个简单的问题,我可以在单独的隔离中运行此方法,以便我的 UI 线程顺利工作。或者分离株有一些限制?

flutter flutter-dependencies dart-isolates flutter-video-player pub.dev
1个回答
0
投票

dart 方面在隔离内使用插件没有任何限制,但此问题及其答案中描述了警告:Isolate 中的 Flutter resize 和 compress image throws UnimplementedError

TLDR;您可以在隔离区中使用flutter插件,但您应该在隔离区中使用更多低级API,因为必须首先启动BackgroundIsolateBinaryMessenger

好消息是您根本不必使用分离物!原因:该插件将缓存操作委托给平台实现,而这些实现本身处理 I/O 和异步操作:

  1. Android 上使用的 WorkManager,源码
  2. URLSession 在 iOS 上使用,它在内部处理非阻塞下载,源代码

因此,您可以在代码中使用

preCache
方法,而不必担心性能。

© www.soinside.com 2019 - 2024. All rights reserved.