1、Flutte环境搭建
flutter sdk地址:Flutter SDK 版本列表 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter
git:Tags · flutter/flutter · GitHub
flutter实战第二版:第二版序 | 《Flutter实战·第二版》
//flutter git地址:https://github.com/flutter/flutter/tags
//升级到指定版本
flutter upgrade v3.0.3
//强制升级
flutter upgrade --force
//降级到指定版本 版本git对应值f139b11009aeb8ed2a3a3aa8b0066e482709dde3
git reset --hard f139b11009aeb8ed2a3a3aa8b0066e482709dde3
//环境变量Path
flutter\bin
//国内环境受限-将如下环境变量加入到用户环境变量中
PUB_HOSTED_URL=https://pub.flutter-io.cn
FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
//以下命令以查看是否需要安装任何依赖项来完成安装
flutter doctor
///编辑器根据自己需求选择可以IDE、Android studio、VS Code
2、编辑器-Android studio
Android官网:Android 开发者 | Android Developers
JDK:注意环境path配置
SDK:一般开发可以直接安装Android studio时下载一个版本sdk即可,专业Android开发需要去下载各个版本sdk
二、创建项目
1、flutter project type:
Application:Flutter项目,主体是Flutter,其中包含iOS、Android、web等项目。
plugin:Flutter插件:用于Flutter无法实现的功能,使用原生来实现出来,然后通过插件在Flutter项目中使用原生实现的功能。
package:纯Flutter模块,不需要原生代码实现,没有Android iOS目录。分包,用于公用的或者特定业务的模块划分。
model:主体是原生项目,用于在原生iOS、Android项目中添加Flutter模块,用于原生与Flutter混合开发。
Skeleton:Flutter 2.5版本以后开始支持,该种方式就是为开发提供一种较好的项目模板,不在是默认的Couter app。模板中可以看到路由、资源、多语言、状态管理,文件夹等好的实践方法
2、项目结构
入口:lib - main.dart
文件 | 作用 |
dart_tool | Dart工具开发包 |
.idea | 开发环境配置 |
android | 安卓原生工程文件 |
build | 编译或运行后产物 |
lib | 包含.dart结尾的工程相关文件 |
test | 包含.dart结尾的工程测试文件 |
.gitignore | git提交仓库忽略文件 |
.packages | 以lib结尾的文件绝对路径 |
flutter_skeleton.iml | 工程文件的本地路径配置 |
pubspec.lock | 前项目依赖所生成的文件 |
pubspec.yaml | 依赖配置 |
README.md | 自述项目信息(html标签) |
External Libraries | 安卓架包和资源文件、Dart SDK 文件、工程开发依赖插件API |
Scratches and Consoles | 创建的临时文件和缓冲区列表 |
analysis_options.yaml | 代码规范 |
3、pubspec.yaml配置文件
#用来指定应用名称或者包名称。该名称也用于项目内外文件的导入,
#如果我们想要在某个文件中使用 main.dart 中的组件或者函数,就需要使用如下句式指定包名导入该文件:import 'package:flutter_skeleton/main.dart';
name: flutter_skeleton
#可选项属性,用于给项目做一段简短的描述
#若需要将项目托管在pub.dev则该字段必填。
description: A new Flutter project.
#插件时
# author:作者,填写自己的署名
# homepage:主页。
# issue_tracker:issue,一般写当前插件源代码的Github issue 地址。
# repository:一般写当前插件源代码的Github地址。
# 防止软件包被pub publish发布到pub.dev上,对于私有软件包这行是必需的配置;
# 如果想要把当前软件包发布到pub.dev也可以删除此行
publish_to: 'none'
#应用或库的版本号
version: 1.0.0+1
#环境
environment:
sdk: ">=2.17.0 <3.0.0"
flutter: "3.0.0"
#依赖库
#依赖会编译到项目中
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
#三种依赖方式
#依赖pub.dev 上第三方库
dio: ^4.0.6
#依赖本地库
local_package:
path: ../local_package
#依赖git上的一个插件
git_package:
git:
url: https://github.com/felangel/git_package.git
ref: git_package
path: packages/git_package
#url:github 地址
#ref:表示git引用,可以是 commit hash, tag 或者 branch
#path:如果 git 仓库中有多个软件包,则可以使用此属性指定软件包
#依赖我们自己的pub仓库
pub_package:
hosted:
name: pub_package
url: http://your-package-server.com
version: ^6.0.0
#仅仅是运行期间的包依赖
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^2.0.0
#flutter 特有的配置项
flutter:
# 可以使用Material中资源
uses-material-design: true
# Enable generation of localized Strings from arb files.
# 新增配置,自动多国语代码生成
generate: true
#是对当前资源的配置,比如 图片、字体等
assets:
- assets/images/
#配置字体
fonts:
- family: Schyler
fonts:
- asset: fonts/Schyler-Regular.ttf
- asset: fonts/Schyler-Italic.ttf
style: italic
基本的介绍完了,下面就可以开始撸码了