Sha*_*ram 8 assets dart flutter flutter-plugin flutter-packages
我正在开发一个包含一些资产文件的颤振包。我像往常一样在 pubsepc.yaml 中提到了所需的资产
assets:
- assets/abc.xyz
Run Code Online (Sandbox Code Playgroud)
并将包上传到https://pub.dartlang.org/。
之后,我创建了一个 flutter 应用程序并导入了我开发的包,pubspec.yaml
例如......
dependencies:
flutter:
sdk: flutter
my_developed_package: ^0.0.1
Run Code Online (Sandbox Code Playgroud)
现在一切正常,除了我的资产不存在。我在我的应用程序中放入了一些资产而没有提及pubsepc.yaml
它的工作原理。我无法理解,如何将这些资产添加到我的包中以便它们自动加载?
sal*_*ler 11
报价自
如果在包的 pubspec.yaml 文件中指定了所需的资产,它会自动与应用程序捆绑在一起。特别是,包本身使用的资产必须在其 pubspec.yaml 中指定。
在 Flutter 中,您可以使用包中的资产,这应该不是问题。唯一的问题是,您需要指定您的包并导入它。例如,如果它是一个图像,你可以使用AssetImage
类和它的package
属性。
AssetImage('assets/abc.xyz', package: 'my_developed_package');
Run Code Online (Sandbox Code Playgroud)
有关如何拨打短信和其他内容的更多信息,请查看此处。
抱歉回答晚了,但以下方法帮助我在插件开发中包含资产(不仅是图像,还包括任何类型的文件)。
我把我的资产放在lib
文件夹下my_plugin/lib/assets
,pubspec.yaml
就像这样。
assets:
- packages/my_plugin/assets/asset_name
# Be careful about indentation
Run Code Online (Sandbox Code Playgroud)
它已与插件一起添加,然后我使用这样的路径访问它们
packages/my_plugin/assets/asset_name
,例如
File myAsset = File("packages/my_plugin/assets/asset_name");
Run Code Online (Sandbox Code Playgroud)
通过这种方法,我能够从插件中获取任何资产,而不仅仅是图像。
对于完整的示例,您可以在此处查看我的插件。
归档时间: |
|
查看次数: |
4760 次 |
最近记录: |