
正文
flutter指定,flutter指定版本
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Mac--Flutter更换指定版本
类似错误No named parameter with the name ‘XXXXXX‘问题
原因:Flutter版本问题
一、回退到指定版本
1、GitHub搜索flutter 点击进入后,选择tags找到需要的版本点进去,如图:
2、复制版本号
cd /Users/apple/Documents/flutter 根目录,同bash_profile中PATH配置保持一致即可。
git reset --hard 3595343e20a61ff16d14e8ecc25f364276bb1b8b
执行完成,检测 flutter --version
执行 flutter doctor
??了
相关问答
Q1: Flutter 切换指定版本
查看所有分支和当前分支
切换 到指定分支。 例如
查看所有版本
切换 到指定版本。 例如
更新到最新版本
cd到自己的flutter目录下
执行。git reset --hard id
这是1.20.4的id
git reset --hard fba99f6cf9a14512e461e3122c8ddfaa25394e89
这是2.5.1的id
git reset --hard ffb2ecea5223acdd139a5039be2f9c796962833d
这是1.22.4的id
git reset --hard 1aafb3a8b9b0c36241c5f5b34ee914770f015818
这是1.22.3的id
git reset --hard 8874f21e79d7ec66d0457c7ab338348e31b17f1d
flutter git地址
找commit id 的手顺
Q2: Flutter发布Package(Pub.dev或私有Pub仓库)
因为我们使用Flutter跨平台技术开发App时,会有很多公用组件,因为Flutter中一切皆为Widget,widget也比较细粒度,所以我们需要进行封装,用于一个项目或者公司不同项目中去~
那么今天写写如何发布package或者插件到Pub.dev上,扯扯谈O(∩_∩)O哈哈~
《Flutter的拨云见日》系列文章如下:
1、Flutter中指定字体(全局或者局部,自有字库或第三方)
2、Flutter发布Package(Pub.dev或私有Pub仓库)
首先,我们知道flutter有四种工程模式:Flutter Application、Flutter Module、Flutter Plugin和Flutter Package。
我们这里就主要讲Package 纯Dart插件的发布吧,都差不多。
创建工程后,就可以编写你的公共组件,或者公用字体库呀啥的, 都行。
在更改下你的pubspec.yaml文件,修改下你的versionCode,项目名称,项目描述,作者等
如果上传失败试试?的命令:
在执行该命令时,可能会中途调到网页,要求你登录google账号,登录授权,到时候登录账号并授权就可以了。
因为我们直接使用flutter packages pub publish是发布到Pub.dev上,并不是发布到私有仓库,该怎么办呢?
其实呢,也很简单!像versionCode,项目名,等都和发布Pub.dev是一样的。没啥区别。
有两种方式:
就是这么简单o( @ )o
相信大家引用Pub.dev上的第三方库都会了哈,到处都是这里不讲了
在使用flutter pub get就可以拉到私有仓库项目了
以上就差不多聊了聊package发布和获取的事儿了,都很明了,大家可以试试,挺简单的。
PS: 写文不易,觉得没有浪费你时间,请给个点赞~ ?
Q3: Flutter(六)Android与Flutter混合开发(Hybird)
如果我们目前的项目是Android的,但是接下来我们希望部分页面可以使用Flutter进行开发,甚至我们希望在Native页面中嵌入FlutterUI组件,那么我们该如何实现呢?
假设你现在Android项目的目录的结构是这样的
这时候如果你想创建一个Flutter模块,使得Android模块和Flutter模块之间可以进行交互,我们可以通过Android Studio新建一个Flutter Module,具体过程是:File — New — New Module ,之后选择Flutter Module,指定Project Location的路径为
也就是说,最终你的项目结构会是这样的
接下来在Android Module的 build.gradle 文件中添加flutter依赖
先创建一个Flutter页面
这里比较重要的是 window.defaultRouteName 这个字段,这个字段可以接收从Native传递过来的参数 (下文我们会介绍原生传递参数的方法),也就是说通过这个字段我们就可以进行Flutter页面的路由的分发
我们可以直接在Android的 MainActivity 中启动一个 FlutterActivity ,这里的 initialRoute 方法中传递的参数就对应Flutter层的 window.defaultRouteName
注意:需要在 AndroidManifest.xml 注册 FlutterActivity
自己创建一个 FlutterAppActivity 继承自 FlutterActivity
在 MainActivity 中启动 FlutterAppActivity (另外别忘了在 AndroidManifest.xml 中注册 FlutterAppActivity )
两种启动方式的区别
如果单纯只是想打开一个Flutter页面,两种方式实际上基本没有太大区别,第一种方式也许还会更简单一点。但是,在Flutter开发中,我们往往还需要开发一些Native插件供Flutter调用,如果使用复写 FlutterActivity 的方式更有利于我们在 FlutterActivity 中注册我们的Native插件,所以实际开发中一般推荐使用第二种方式
扩展思考
initialRoute 从名称上看起来是Flutter提供给我们进行Native与Flutter交互的路由跳转的,但是实际上他就是一个字符串,我们不仅仅可以传递一个路由名称,有时候我们也可以通过这个参数传递一串JSON数据,然后在Flutter端进行解析,这样我们就可以通过这个参数做更多的事情
activity_main.xml
FrameLayout 用于承载Flutter组件
MainActivity.java
使用 FragmentManager 将 FlutterFragment 添加到 FrameLayout 容器中
运行结果
上半部分是原生的TextView,下半部分是Flutter的Text组件
本节主要介绍了Native和Flutter之间的页面跳转,以及同一个页面中Native与Flutter组件的组合。接下来会介绍如何编写Android插件与Flutter进行数据交互
Q4: Flutter SDK回退指定版本
由于flutter到sdk是托管在github仓库里的,所以升级降级SDK版本完全可以基于git的形式操作,这也是 flutter version 废弃后官方推荐的改变SDK版本的方式,
通过Git的方式回退版本一共需要四步:
macOS和Linux的用户可以在 命令行 中使用 which 命令查看flutter SDK的路径:
Windows用户可以在 命令行 中使用 where 命令查看flutter SDK的路径:
从执行命令的结果中截取 /bin/flutter 前的路径,就是flutter SDK的路径,例如:
使用 cd 命令进入flutter SDK的路径:
点击链接 flutter的版本列表 选择版本号,注意需要选择和当前Channel一致的版本(参考1.1节中的方法)
flutter 2.3版本之前,提供了 version 和 downgrade 两个参数可以帮助用户回退版本,这两个参数都能回退到指定版本号,区别是:
使用 verison或downgrade参数仅需以下三步 :
点击链接 flutter的版本列表 选择版本号,注意需要选择和当前Channel一致的版本,查看Channle的方法如何:







