创建

  1. flutter doctor # 检查及修复flutter-sdk
  2. flutter devices # 查看连接设备
  3. flutter emulators # 查看有效设备
  4. flutter create my-app # 创建flutter应用

Vscode 中开发运行Flutter 应用

如果你习惯用Android Studio 的话可以直接用Android Studio 直接开发Flutter。但是Android
Studio 比较耗费电脑资源,所以推荐使用Vscode。

1、Vscode 中安装Flutter 插件、Dart 插件。
2、Vscode 中打开flutter 项目进行开发
3、运行Flutter 项目

  1. flutter run
  • r 键:点击后热加载,也就算是重新加载吧。
  • p 键:显示网格,这个可以很好的掌握布局情况,工作中很有用。
  • o 键:切换android 和ios 的预览模式。
  • q 键:退出调试预览模式。

4、Vscode 默认连不上第三方模拟器解决方案
cd 到对应夜神模拟器C:\Program Files\Nox\bin 目录然后运行

  1. nox_adb.exe connect 127.0.0.1:62001

夜游模拟器 abd版本跟android sdk 不一致,导致vscode无法识别

查看abd版本号:adb version
1、删除 C:\Program Files\Nox\bin 下 adb.exe、nox_adb.exe文件
2、复制android-sdk的adb.exe 至 夜游模拟器(C:\Program Files\Nox\bin)下,并重命名为 nox_adb.exe。

android-studio下 sdk-manager路径 C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools

运行项目白屏或者闪屏的解决方案,

在项目根目录打开命令面板或者运行的flutter下的 teiminal中,执行 flutter run —enable-software-rendering

热重载’ vs ‘完全重启’

热重载通过将更新的源代码文件注入正在运行的Dart VM(虚拟机)中工作。这不仅包括添加新类,还包括向现有类添加方法和字段以及更改现有函数。尽管有几种类型的代码更改无法热重载:

  • 全局变量初始化器.
  • 静态字段初始化器.
  • app的main()方法.

对于这些更改,您可以完全重新启动应用程序,而无需结束调试会话:
不要点击停止按钮; 只需重新单击运行按钮(如果在运行会话中)或调试按钮(如果在调试会话中),或者按住Shift键并单击“热重载”按钮

调整ui的时候,可使用 启动调试 进行热加载
调整数据、状态的时候,建议使用flutter run

问题

Back-end (JVM) Internal error: wrong bytecode generated

image.png
查看本地kotlin版本号
image.png

flutter运行一直Resolving dependencies…

原因:jcenter google库无法访问到导致的问题,虽然你疑惑你有qiang,为啥还是无法访问,全局代理还是被屏掉了。换种思路,我们换成使用阿里的镜像。

修改项目下的build.gradle 文件的下载依赖库的镜像

maven{ url”http://maven.aliyun.com/nexus/content/groups/public“} maven { url ‘https://maven.aliyun.com/repository/google’ } maven { url ‘https://maven.aliyun.com/repository/jcenter’ }

  1. buildscript {
  2. ext.kotlin_version = '1.3.72'
  3. repositories {
  4. // google()
  5. // jcenter()
  6. maven{ url"http://maven.aliyun.com/nexus/content/groups/public"}
  7. maven { url 'https://maven.aliyun.com/repository/google' }
  8. maven { url 'https://maven.aliyun.com/repository/jcenter' }
  9. }
  10. dependencies {
  11. classpath 'com.android.tools.build:gradle:3.5.0'
  12. classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
  13. }
  14. }
  15. allprojects {
  16. repositories {
  17. // google()
  18. // jcenter()
  19. maven{ url"http://maven.aliyun.com/nexus/content/groups/public"}
  20. maven { url 'https://maven.aliyun.com/repository/google' }
  21. maven { url 'https://maven.aliyun.com/repository/jcenter' }
  22. }
  23. }

Waiting for another flutter command to release the startup lock…

方法1:重启电脑
方法2:进入到你的flutter sdk目录中,然后找到bin/cache/lockfile文件,删除它即可。
删除之后你再运行flutter doctor

打包、部署

和环境安装一样,强烈推荐参考官网,只有官网会及时更新,相关参考: