flutter项目调试问题小结

背景

目标是用android studio + flutter 跑hello world

下载

android studio

我下载的是2024.3.2.15版本

最新版下载首页就能下:下载 Android Studio 和应用工具 - Android 开发者 | Android Developers

历史版本可在归档列表下载:Android Studio 下载文件归档 | Android Developers

注意,打开归档列表没东西是因为网页为中文,把语言改成英文,滑动到最底下选择同意,就能看到归档列表了

flutter

我下载的是3.22版本

在归档列表可下载历史版本:归档列表 | Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

版本

android studio: m版本

flutter sdk:3.22版本

android studio

不同版本会有差异,我用emulator运行项目,ladybug运行emulator会提示下载haxm,haxm在github才能下,国内访问github有时会访问不了。最后卸载了l版本,下载了m版本

flutter

刚开始下了最新版(3.32),发现和gradle,kotlin有些不兼容,提示要用gradle9.0以上版本,但gradle9.0又找不到包,调了半天,无果。

后来卸了,装了个3.22版本,调调能跑

困难

用flutter3.32+android studio m版本调了半天调不出来

配置

创建项目时flutter sdk path

创建flutter项目,会提示输入flutter sdk path,这里填环境变量配置的那个bin目录的上级目录就可以

环境变量

这俩必选要配,不知道配哪可配用户变量

这个可选配置,配flutter命令,配了可能方便些,任意cmd窗口都能执行flutter命令。找到flutter sdk的安装路径(解压路径),把bin目录绝对路径加到用户变量的path下

gradle

配置点如下,此处gradle版本是8.6,android studio版本是m

gradle下载源配国内镜像,如果用默认的services.gradle.org会超时

settings.gradle和build.gradle加上国内源,否则也可能超时

emulator

运行avd后可运行设备未显示emulator

检查android studio是否安装cmdl tools,在settings下sdk tools底下找到command line tools字样,若未安装则勾选,然后点确认或apply,点完了会弹窗下载,安装完comand line tools,退出android studio重新打开项目,重新运行avd,检查可运行设备是否显示avd

若还不行,可能licenses未接受,配了flutter环境变量前提下,打开一个cmd终端,输入flutter doctor --android-licenses 处理license是接受还是拒绝,完成后再重试检查是否能avd运行项目

项目运行

java和gradle版本不匹配

运行flutter doctor --verbose 检查android chain下面的build版本,即java版本,再对照java版本找合适的gradle版本。我用了java21,gradle最开始用了7.6,提示gradle和java版本不兼容,把gradle换成8.6就好了

可提升点

运行速度

emulator 用gradle构建很慢,可能电脑性能一般,或者下载各依赖软件太慢,可能都是在线下的,后续考虑此问题

相关推荐
Lanren的编程日记9 小时前
Flutter鸿蒙应用开发:生物识别(指纹/面容)功能集成实战
flutter·华为·harmonyos
Lanren的编程日记12 小时前
Flutter鸿蒙应用开发:基础UI组件库设计与实现实战
flutter·ui·harmonyos
西西学代码12 小时前
Flutter---波形动画
flutter
于慨16 小时前
flutter基础组件用法
开发语言·javascript·flutter
恋猫de小郭18 小时前
Android CLI ,谷歌为 Android 开发者专研的 AI Agent,提速三倍
android·前端·flutter
火柴就是我19 小时前
flutter pushAndRemoveUntil 的一次小疑惑
flutter
于慨19 小时前
flutter doctor问题解决
flutter
唔6619 小时前
flutter 图片加载类 图片的安全使用
安全·flutter
Nathan2024061621 小时前
Flutter - InheritedWidget
flutter·dart
恋猫de小郭21 小时前
JetBrains Amper 0.10 ,期待它未来替代 Gradle
android·前端·flutter