Flutter第一篇工程结构介绍

188 阅读2分钟

1. 工作环境要求

接下来讨论的工作环境是MAC环境,需要必备的安装软件有:

  • homebrew;
  • flutter sdk;
  • sdk;

2. flutter几种工程类型

进入正题,通过AS创建Flutter工程有如下选项:

  • Flutter Application;
  • Flutter modules;
  • Flutter Plugin;
  • Flutter Package;

第一种代表是一个Flutter项目,可以编译出来android apk和对应的ios的安装包。接下来我们会详细讲解的。

第二种用于在原生项目中进行集成flutter的module:

通过project structure->Dependencies->app->+->Import Flutter Module,进行已经有的Flutter工程的导入。导入后,对于原生项目,主要就是两个地方有所不同,一是settings.gradle,另外一个就是build.gralde。

image.png

flutter module的文件目录结构如下:

image.png 我们的功能主要是在lib目录下进行编写。

第三种用于编写插件,进行flutter调用原生平台的功能。比如相机,定位,toast: 我们的plugin用来给flutter Application或者flutter module使用的。

因此在flutter module里面配置依赖对应的flutter plugin。然后原生工程再依赖flutter module.或者直接创建flutter项目,flutter Application依赖对应的plugin。

正常的flutter plugin的目录结构如下,建议android目录操作右键,选择在AS中打开android目录的工程,从而方便开发和断点调试。plugin这儿多了一个example目录,用于自己模仿集成者,判断调用方法是否正确执行

image.png

一个flutter Application或者flutter Module集成flutter Plugin,只需要在pubspect.yaml中进行依赖配置。

image.png

最后一种,Flutter Package,目前没有了解到混合开发的使用处,暂不讨论。

综上,了解了flutter的工程的三点:

  1. 各种工程类型的作用;
  2. 各种类型之间的关系与合作方式;
  3. 每种工程的文件目录;

3. 学习的链接

  1. Dart语言:

几个比较好的Dart语言网站:

www.dartcn.com/

dart.cn/

www.dart-china.org/

  1. Flutter UI:

Flutter UI看这个就够了,所有Widget都有demo。

github地址:github.com/toly1994328…

如果打不开github,可以看这个:gitee.com/toly1994328…

  1. Flutter介绍

官网:flutter.dev/

中文官网:flutter.cn/

插件库官网:pub.dev

掘金Flutter论坛:juejin.cn/tag/Flutter