我正在开发一个包含一些assets资源 文件的Flutter 翼软件包.我像往常一样在pubSepc.yaml中提到了所需的assets资源 ,如下所示

  assets:
    - assets/abc.xyz

并将软件包上传到https://pub.dartlang.org/.

在那之后,我创建了一个Flutter 应用程序,并在pubspec.yaml分钟内导入了我开发的软件包,就像……

dependencies:
  flutter:
    sdk: flutter
  my_developed_package: ^0.0.1

现在一切都很好,除了我的assets资源 不在. 我在我的应用程序中放了一些assets资源 ,但没有提到pubsepc.yaml和它的工作情况.我无法理解,我如何将这些assets资源 添加到我的包中,以便自动加载?

推荐答案

以下方法帮助我在插件开发中包括assets资源 (不仅包括图像,还包括任何类型的文件).

我把我的assets资源 放在lib文件夹下,比如my_plugin/lib/assets,像这样放在pubspec.yaml文件夹中.

  assets:
    - packages/my_plugin/assets/asset_name
       
  # Be careful about indentation

必须将您的插件assets资源 放在lib目录中,放在其他目录中 目录,它不会工作.

它是与插件一起添加的,然后我用这样的路径访问它们

File myAsset = File("packages/my_plugin/assets/asset_name");

通过这种方式,我不仅可以从图片中获得assets资源 ,还可以从插件中获得assets资源 .

关于一个完整的例子,你可以查看我的插件here.

Dart相关问答推荐

Flutter 布局:如何在 Flutter 中将 Row 放入 Flex(或另一个 Row)中?还使用堆栈小部件

自定义主题无法正常工作

如何在 Flutter Web 中动态更改 App Title?

使用 headers 和 body 进行 HTTP Post

如何在 Flutter 中忽略整个文件的 lint 规则?

如何防止键盘在Flutter中按提交键时失效?

如何在Flatter中更改复选框边框 colored颜色 ?默认情况下,它显示为黑色,但我希望它显示为灰色

Dart / Flutter 错误:没有为类Logger定义toStringDeep

Flutter:如何正确实现 FlutterError.OnError

Package:flutter/src/widgets/overlay.dart':Failed assertion: line 133 pos 12: "_overlay != null"

Flutter-创建一个倒计时(countdown)小部件

将JSON映射到类对象

Flutter: shared preferences

断言失败时如何在 Dart 中打印消息?

如何从 JavaScript 调用 Dart 函数

如何对map值进行排序?

dart 是否支持运算符重载

dart,overloading[] 运算符?

如何使异步 Dart 调用同步?

字符串枚举