如何在另一个Flutter应用程序中使用本地Flutter包?

时间:2018-07-09 04:55:51

标签: dart flutter flutter-dependencies

如何在另一个Flutter应用程序中使用本地Flutter包?

我使用以下命令创建了一个包:

flutter create --template=package my_new_package

然后在我的应用程序源代码中=> main.dart

import "package:my_new_package/my_new_package.dart" // can not find the package

5 个答案:

答案 0 :(得分:21)

在您的flutter应用程序中找到此文件=> pubspec.yaml

建立本地依赖性

dependencies:
   flutter:
     sdk: flutter
   my_new_package:
     path: ./my_new_package

答案 1 :(得分:5)

整个过程:

  1. 下载要使用的插件的代码,并将其置于与flutter项目目录相同的级别

     -- plugin-name  
     -- your flutter directory -- lib
                               -- android
                               -- ios etc etc
    
  2. 将插件路径添加到pubspec.yaml。 *如果不确定使用正确的插件名称,请查看插件的pubspec.yaml文件中的name:属性。插件目录还必须使用相同的name:

    保存
    dependencies:
     plugin-name:
       path: ../plugin-name
    
  3. 运行Pub get,您可以像导入任何其他插件一样进行导入。唯一的区别是,在开发过程中单击任何插件类时,它将指向本地文件。

答案 2 :(得分:0)

确保您对pubspec.yaml的依赖关系必须如下所示

my_new_package:

并设置新的包路径

path: ./my_new_package

在新应用程序中可以使用本地flutter软件包之后

答案 3 :(得分:0)

路径依赖:Flutter应用程序可以通过文件系统路径依赖于插件:依赖。该路径可以是相对路径,也可以是绝对路径。例如,要依赖位于应用程序旁边目录中的插件plugin1,请使用以下语法:

dependencies:
  plugin1:
    path: ../your_package/

答案 4 :(得分:0)

嘿,一旦我开始使用颤振,我就遇到了同样的问题。 我在我的应用中实现了 pdf_view 插件示例,用于更改微光效果而不是 CircularProgressIndicator()

一些知识

<块引用>

您可以编辑由 flutter pub get 获取的插件,但在您通过 flutter 创建应用程序包时它们可能会被替换。

现在您对示例插件的回答假设以 advance_pdf_viewer 为例 GitHub Link

  1. 下载 zip 文件并在 pdf_viewer/

    中解压
  2. 确保 pdf_viewer/ 拥有所有文件,包括 libAndroidiOS 和所有相关文件。

  3. 复制项目目录中的 pdf_viewer 文件夹为例 我的项目是 invoice_viewer,所以它的根目录包含所有文件夹,例如 lib、Android、iOS 等。将它与 lib、{{1} 一起复制到此根目录中}, Android

  4. 现在打开您的 iOS 并编写如下代码

pubsec.yaml
  1. 在评论中,我已将服务器版本替换为本地版本,并在插件的 dependencies: flutter: sdk: flutter # advance_pdf_viewer: ^2.0.0 advance_pdf_viewer: path: ./pdf_viewer 文件中进行更改以实现所需的更改。

希望你和其他人从这个发现中得到一些信息!