资源使用

Flutter 应用程序包含代码和 assets(也为资源)。资源是被打包到应用程序安装包中,可以在运行时访问的一种文件。常见的资源类型包括静态数据(例如 JSON 文件),配置文件,图标和图片(JPEG,WebP,GIF,动画 WebP / GIF,PNG,BMP 和 WBMP)。

指定资源

Flutter使用pubspec.yaml文件来配置所需要的资源

1
2
3
4
5
flutter:
assets:
- assets/my_icon.png
- assets/background.png
- directory/

如果要包含一个目录下所有的assets,需要在目录名称的结尾加上/

Read More

编译Flutter源码

Mac下编译Engine

Engine实现了Flutter的核心库,包括动画、图形、文件、网络、访问支持、插件架构、Dart的运行时、编译工具链等

准备工作

1
2
3
4
5
6
7

# 准备depot_tools工具
# 假设当前目录是$HOME/Flutter/source
cd $HOME/Flutter/source
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
#添加环境变量
export PATH=$PATH:$HOME/Flutter/source/depot_tools

下载源码

  1. 进入github的flutter官网,fork一份engine的源码:https://github.com/flutter/engine

Read More

版本管理工具fvm

Java中的版本管理可以使用jenv,Flutter中可以使用fvm。

官网:https://fvm.app

官方使用文档:https://fvm.app/docs/getting_started/overview

使用流程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Mac下安装
brew tap leoafarias/fvm
brew install fvm

# 激活,不确定要不要使用
pub global activate fvm

# 安装2.5.0的版本
fvm install 2.5.0
# 移除版本
fvm remove 2.5.0
# 显示所有安装的版本
fvm list
# 全局使用某个版本
fvm global 2.5.0 全局使用某个版本

# 局部使用某个版本,会在当前目录生成.fvm文件夹
fvm use beta --force 会在当前目录创建.fvm文件夹


Read More