pubspec.yaml是flutter框架项目中的核心配置文件。类似于node的package.json配置文件。
配置项包括:
-
name:此处是在import:package引包的时候,的名字
-
假如name叫flua, 那么在引入该包的时候,import 'package:flua/........';
-
发布flutter插件的时候,别人也是根据这个name。
-
version:1.0.0+1
-
整个version对应着android里边的versionname和versioncode。
-
+号前边的部分对应着versionName,仅是展示给用户,譬如用户可以在安卓机上查看当前app的版本, 此处看到的app版本就是versionname的值
-
+号后的部分对应着versioncode,是提供给各大应用商店、程序系统等,是用于app升级的。
-
二者每次发版都需要自增。
-
场景一: 当versionname不增, versioncode自增的时候,当前展示给用户的最新版本是:1.2.0;versioncode展示给应用商店的是3;假如A应用商店没有上传最新的1.2.0且versioncode为2的app。用户在A商店下载并安装后,发现了B商店,但B商店的versionname也是:1.2.0;但versioncode是3;那么此时B商店已经上传了最新的app。此时app又会被提示需要升级。(可以打开应用商店找一个自己手机已经安装好了的版本很老的app,可以看到在该app会有更新的提示。)但此时给用户展示的是,我已经是1.2.0最新版本了,为什么还需要从1.2.0升级到1.2.0。所以每次发版无论大小版,name和code都要自增。
-
场景二:当versioncode不增,versionname增加,会一直是versioncode的版本。因为应用的更新对versioname无感知。
-
切记:每次的发版都要增加。无论发版的大小。
-
enenvironment:可以设置dart和flutter等版本控制范围。
如图是:sdk代表的是dart sdk的版本控制范围。 flutter代表的是flutter sdk的版本控制范围。下边的依赖项的dart和flutter的版本也是受限于此处的。
-
depenndencies:线上依赖项如图
标1的位置:此处的sdk:flutter代表的是,依赖项flutter或者flutter_localizations是一定存在于你安装的flutter sdk中的,而且依赖项的也是受限于flutter sdk版本的。如果依赖项不存在与flutter sdk中,会在 更新依赖的时候报错。如下:
**标2的位置:**版本约束,譬如^1.2.0 等同于 >=1.2.0 <2.0.0(不包含2.0.0);譬如^0.2.2 >=0.2.2 <0.3.0
**标3的位置:**可以不设置具体版本,也可以设置any,但是他的版本范围也是受限于enenvironment设置的sdk中。下载依赖于enenvironment sdk版本范围内的依赖项
-
依赖项引入的方式
-
可以通过pub.dev里边注册的方式引用。
-
通过自己的资源库的方式引用
-
通过本地目录
-
通过git方式
6. dev_dependencies开发依赖,原理和使用方式和dependencies一样。
-
flutter:
-
assets:资源的配置,图片,字体,图标等。
注意: 如果要采用文件夹的方式来引入资源,一定要在配置的地方的结尾加上‘/’;
注意: fonts里边有个weight属性,按照官方文档的意思是,我配置weight:700, 改字体的默认字重是700, 但是怎么试都无任何变化。大家也可以自行试试,如果这个属性我没理解对,可以告诉我哈。
---还在学习flutter中的小白
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!