Android Studio中创建第一个Flutter项目

一、Flutter环境验证

创建Flutter项目之前需要验证是否有Flutter环境,如没有Flutter 环境,请参考配置Flutter开发环境

1.1、flutter doctor

验证通过会有以下提示

复制代码
[√] Flutter (Channel stable, 3.29.3, on Microsoft Windows [版本 10.0.19045.5737], locale zh-CN)
[√] Windows Version (10 专业版 64 位, 22H2, 2009)
[√] Android toolchain - develop for Android devices (Android SDK version 35.0.0)
[√] Chrome - develop for the web
[X] Visual Studio - develop Windows apps
    X Visual Studio not installed; this is necessary to develop Windows apps.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components
[√] Android Studio (version 2023.3)
[√] Android Studio (version 2024.3)
[√] Android Studio (version 4.2)
[√] IntelliJ IDEA Community Edition (version 2024.2)
[√] Connected device (3 available)
[√] Network resources

如没有Flutter 环境,请参考配置Flutter开发环境

1.2、Android Studio中配置Dart和Flutter插件

在Android Studio →Setting→Plugins中查看是否有Dart和Flutter插件

如没有,请先安装Dart和Flutter插件,安装完成后重启Android Studio

二、Android Studio中创建第一个Flutter项目

File → New → New Flutter Project...

设置Flutter SDK Path

输入项目名称和包名,支持的平台选择Android和iOS

创建完成

运行项目

提示报错信息如下:

复制代码
Exception in thread "main" java.util.zip.ZipException: zip END header not found
	at java.base/java.util.zip.ZipFile$Source.findEND(Unknown Source)
	at java.base/java.util.zip.ZipFile$Source.initCEN(Unknown Source)
	at java.base/java.util.zip.ZipFile$Source.<init>(Unknown Source)
	at java.base/java.util.zip.ZipFile$Source.get(Unknown Source)
	at java.base/java.util.zip.ZipFile$CleanableResource.<init>(Unknown Source)
	at java.base/java.util.zip.ZipFile.<init>(Unknown Source)
	at java.base/java.util.zip.ZipFile.<init>(Unknown Source)
	at java.base/java.util.zip.ZipFile.<init>(Unknown Source)
	at org.gradle.wrapper.Install.unzip(Install.java:214)
	at org.gradle.wrapper.Install.access$600(Install.java:27)
	at org.gradle.wrapper.Install$1.call(Install.java:74)
	at org.gradle.wrapper.Install$1.call(Install.java:48)
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)
	at org.gradle.wrapper.Install.createDist(Install.java:48)
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
Error: Gradle task assembleDebug failed with exit code 1

在android文件夹中修改gradle镜像地址

复制代码
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.9-all.zip

修改java sdk ,选择jdk17

提示NDK错误

A problem occurred configuring project ':app'.

NDK not configured. Download it with SDK manager. Preferred NDK version is '27.0.12077973'.

在android →build.gradle.kts中注释ndkVersion

复制代码
//    ndkVersion = flutter.ndkVersion

重新运行,安装到手机里,就可以看到首页了

相关推荐
执明wa15 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
404_coder15 小时前
源码视角下的 Android 开机流程:从 Zygote、SystemServer 到 Launcher
android
二流小码农15 小时前
鸿蒙开发:以登录案例了解代码架构MVVM
android·ios·harmonyos
用户693717500138416 小时前
从代码生产者到 AI 协作者:软件工程师的角色重构
android·前端·后端
GitLqr16 小时前
别在 Flutter 的 main() 里乱锁屏幕方向,小心 iPad 分屏功能被你搞没了
android·flutter·ios
sg_knight17 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db
爱笑鱼17 小时前
Binder(四):ioctl(BINDER_WRITE_READ) 之后,事务怎样到达目标进程?
android
AFinalStone17 小时前
Android 7系统休眠唤醒(二)开机全链路—BootROM到Launcher
android·电源管理·休眠唤醒
Mr YiRan17 小时前
Android NDK开发之统计到未被回收的图片
android