Win10环境下Android Studio中运行Flutter HelloWorld项目

一、引言

Android Studio是Android的官方IDE(Integrated Development Environment)。它专为Android而打造,可以加快开发速度,为Android设备构建最高品质的应用。

Flutter是Google推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过Dart语言开发App,实现一套代码同时运行在iOS和Android平台。

Dart是一种针对客户优化的语言,可在任何平台上开发快速的应用程序。其目标是为多平台开发提供最高效的编程语言,并为应用程序框架搭配了灵活的运行时执行平台。通常来说,编程语言会包含一些技术壁垒,即语言在设计中的抉择决定了其功能和优势。 Dart的语言设计针对客户端开发,它优先考虑多平台(Web,移动端和桌面端) 上的开发 (亚秒级的状态热重载) 和高质量生产环境体验。Dart也是Flutter的基础。 Dart作为Flutter应用程序的编程语言,为驱动应用运行提供了环境,同时Dart还支持许多核心的开发任务, 例如格式化,分析和代码测试。

二、基础环境

需要安装Android Studio和Flutter,Android Studio中的模拟器可不装、而选用真机。

Android开发工具下载:https://www.androiddevtools.cn/

安装Android Studio可查看这篇博客(仅供参考):https://blog.csdn.net/tao_789456/article/details/118093106

真机运行APP(测试Android Studio开发环境,仅供参考):https://blog.csdn.net/mfysss/article/details/128104855

安装Flutter可查看这篇博客(仅供参考):https://zhuanlan.zhihu.com/p/628479851(基本上是下载、解压、设置环境变量就可以了)。

三、我的环境

Win10版本:10.0.19042

Android Studio版本

真机环境:Meizu Pro 6 Plus(Android7.0.0)

Flutter版本

Flutter 3.3.10 • channel stable • https://github.com/flutter/flutter.git

Framework • revision 135454af32 (7 months ago) • 2022-12-15 07:36:55 -0800

Engine • revision 3316dd8728

Tools • Dart 2.18.6 • DevTools 2.15.0

四、遇到的问题

1、安装Android Studio的时候始终无法安装手机模拟器,大概原因是电脑的CPU不支持VT-x。装不了就不逞强了(因为这不是我个人的电脑,而且电脑桌面也是云桌面,捣鼓不好弄),然后我选用了真机运行。

2、安装Flutter的时候,出现flutter相关的命令没反应、不运行、卡住的问题。除了上述的现象,如果你贸然在Android Studio中创建Flutter项目也会显示不正常(例如,没有Project Type、Android language、iOS language可以让你选),或者create项目的时候被卡住。解决方案:根据博客https://blog.csdn.net/huanggan08/article/details/88641198的指引将Flutter的安装位置进行了迁移,例如我一开始是安装在C盘的"Program Files"(切忌,带空格的安装路径是有可能导致这个问题的主要原因),然后我迁移到了C盘的根目录。

3、在创建Flutter项目的时候出现"Invalid module name:'XxxxXxxx' - must be a valid Dart package name(lower_case_with_underscores)"。解决方案:使用小写字母或下划线的组合命名项目。

4、Flutter App Run 卡在 Running Gradle task 'assembleDebug'。解决方案,切换Flutter的源(source,主要是flutter\packages\flutter_tools\gradle中的flutter.gradle),具体Flutter项目中的build.gradle(即android/build.gradle文件)我这边不改也可以。我主要参考了这篇博客来解决我遇到的问题:https://www.bilibili.com/read/cv22572083。具体方法:

bash 复制代码
修改Flutter SDK中packages\flutter_tools\gradle\flutter.gradle文件:

将buildscript.repositories下面两行代码注释掉
//google()
//mavenCentral()
改成
maven {
   allowInsecureProtocol = true
   url 'https://maven.aliyun.com/repository/google'
}
maven {
   allowInsecureProtocol = true
   url 'https://maven.aliyun.com/repository/jcenter'
}
maven {
   allowInsecureProtocol = true
   url 'http://maven.aliyun.com/nexus/content/groups/public'
}

在修改过程中请注意空格字符应与文件保持一致。

5、在运行flutter doctor的时候,它提示我没有安装Visual Studio。其实这个Visual Studio不用安装也可以开发Flutter项目,具体装不装看个人吧。

五、在Android Studio中运行Flutter HelloWorld项目

创建一个Flutter项目:

选择Flutter SDK路径(这一步很重要,路径不能包含空格,前面在安装Flutter的时候就要保证),然后next:

命名项目(注意小写),选择Android和iOS的语言,然后点Finish。如果没有出现下面这个界面,说明Flutter没安装对,需要自己再检查调整一下。

写代码,或者直接运行:

然后连接电脑的Meizu Pro 6 Plus手机就会提示安装,安装后打开该app,手机屏幕上就会显示HelloWorld Times: 0,如果你不断地点"+"号图标,数字就会一直增加。

好啦,博客快要写完了,大家有问题留言区见。

六、参考资料

1、Android Studio 功能 | Android 开发者 | Android Developers

2、Flutter介绍

3、Dart 概览

相关推荐
dalancon1 小时前
SurfaceControl 的事务提交给 SurfaceFlinger,以及 SurfaceFlinger 如何将这些数据设置到对应 Layer 的完整流程
android
dalancon1 小时前
SurfaceFlinger Layer 到 HWC 通信流程详解
android
cccccc语言我来了1 小时前
Linux(9)操作系统
android·java·linux
yige452 小时前
【MySQL】MySQL内置函数--日期函数字符串函数数学函数其他相关函数
android·mysql·adb
洞见前行2 小时前
AI 当逆向工程师:Claude Code 自主分析 APK 和 so 文件,解决 Unity 插件化启动崩溃
android·人工智能
王码码20352 小时前
Flutter 组件 inappwebview_cookie_manager 适配 鸿蒙Harmony 实战 - 驾驭核心大 Web 容器缓存隧道、构建金融级政企应用绝对防串号跨域大隔离基座
flutter·harmonyos·鸿蒙·openharmony·inappwebview_cookie_manager
左手厨刀右手茼蒿3 小时前
Flutter 组件 ews 的适配 鸿蒙Harmony 实战 - 驾驭企业级 Exchange Web Services 协议、实现鸿蒙端政企办公同步与高安通讯隔离方案
flutter·harmonyos·鸿蒙·openharmony
努力进修3 小时前
旧安卓手机别扔!用KSWEB搭个人博客,搭配外网访问超香
android·智能手机·cpolar
钛态3 小时前
Flutter 三方库 react 泛前端核心范式框架鸿蒙原生层生态级双向超能适配:跨时空重塑响应式单向数据流拓扑与高度精密生命周期树引擎解耦视图渲染控制中枢(适配鸿蒙 HarmonyOS ohos)
前端·flutter·react.js
键盘鼓手苏苏3 小时前
Flutter 组件 spry 适配鸿蒙 HarmonyOS 实战:轻量化 Web 框架,构建高性能端侧微服务与 Middleware 治理架构
flutter·harmonyos·鸿蒙·openharmony