Flutter中如何基于平台编译源代码?

时间:2021-02-24 22:25:44

标签: flutter flutter-layout flutter-dependencies flutter-web

我在 Flutter 中实现了一个插件。它在 android 和 ios 上运行良好。后来添加了网络平台支持。它在网络版本中也运行良好。添加网络平台支持后,我尝试从android studio 执行移动版android。

代码未编译并给出以下错误消息。

/lib/native_video_view_web.dart:5:8: Error: Not found: 'dart:html'
import 'dart:html';
       ^
/lib/src/navigation/js_url_strategy.dart:9:8: Error: Not found: 'dart:html'
import 'dart:html' as html;

我知道这是由于“dart:html”包造成的,该包仅适用于网络,不适用于移动版本。这里有一些关于同一个 Reference Link 的讨论。没有人提到如何基于平台编译代码来避免这个问题。

后来我观察到,video_player flutter 插件源代码。他们也支持网页版。并注意到他们也在他们的网络实现中使用了“dart:html”。我尝试执行移动和网络构建。一切正常,有任何问题。我不明白他们是如何设法基于平台编译代码的。所以“dart:html”不会为移动构建带来问题。

有没有人知道如何处理这个问题。

0 个答案:

没有答案