在AndroidStudio创建Flutter项目并运行到模拟器

1.Flutter简介        

        Flutter是Google开源的构建用户界面(UI)工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。Flutter 开源、免费,拥有宽松的开源协议,适合商业项目。

        官网:

Flutter中文网 官网

2.安装AndroidStudio并下载Flutter插件

        AndroidStudio安装方法可以参考这篇文章:

我的安装AndroidSDK地址保存在D:\PubData\Android\SDK。如下图所示:

        在AndroidStudio开发工具中File>Settings>Plugins中搜索Flutter安装。第一次安装Flutter会提示安装Dart插件,点击Install按钮。最后重启IDE使插件生效。

      查看到安装好了Flutter和Dart。   

 3.Flutter SDK安装

        官网地址:

Archive | Flutter

        根据自己的环境下载最新稳定版本(Stable channel),当前最新版是3.19.6 。

        下载完成后,解压到某一位置,D:\PubData\flutter_windows_3.19.2-stable

4.设置环境变量

         设置系统环境变量:

        添加用户环境变量的Path:

     设置完成后,在cmd命令行执行flutter doctor来检查flutter环境是否正常。如果有问题会显示红色的X,根据具体情况自行解决,再进行检查。如下图中的X问题的解决方法:

4.1问题1—缺少安装插件 cmdline-tools component is missing

        描述:

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    X cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.

         解决办法:根据路径Settings>Languages&frameworks>SDK Tools>Android SDK Command-line Tools(latest)勾选点Apply按钮安装。

4.2问题2Android license status unknown.

        描述:

    X Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.

        解决办法: 

        执行 flutter doctor --android-licenses ,如果报错版本问题一般是Android Studio自带了jdk版本与JAVA_HOME配置的jdk版本冲突了,可以检查 JAVA_HOME 环境变量,将路径设置为D:\\Android Studio\\jre 再执行 flutter doctor --android-licenses 并同意各种协议。

4.2问题3 Network resources网络资源访问超时

        描述:

[!] Network resources
    X A network error occurred while checking "https://maven.google.com/": 信号灯超时时间已到

    X A network error occurred while checking "https://github.com/": 信号灯超时时间已到

        解决办法:按如下步骤修改

         a.修改flutter安装路径下packages\flutter_tools\lib\src\路径下的http_host_validator.dart文件中的kMaven配置:

 const String kMaven = 'https://maven.aliyun.com/repository/google/';

        b.删除flutter安装目录/bin/cache 文件夹

        c.重新执行flutter doctor 

5.Android 开发环境设置

 5.1 创建android模拟器

在菜单 Tools > Device Manager 点击 Create device 创建设备 。

 默认提供了一些设备,我这里选择一个pixel 3a.

 选择镜像并下载,建议选择 x86 或 x86_64,点击finish创建模拟器。

 点击运行,效果如下:

5.2创建Flutter项目

         在 Android Studio 打开 File > New > New Flutter Project,选择SDK路径:

         点击Next,填写项目名称,配置Android和ios语言,点击 Create:

 报错提示Projectname的命名方式不对,我改为my_test_app后就可以了,如下是创建好的项目:

选择安卓模拟器,发现是灰色的,点run按钮,提示:not applicable for the "main.dart" configuration,解决办法,在Project Structure中要配置SDK。如下配置后,重启生效:

运行报错:

 换成默认的jdk试下:

         经过一段长时间的等待,终于可以在模拟器上看到运行的程序了。

console窗口的信息如下: 

Launching lib\main.dart on sdk gphone64 x86 64 in debug mode...
Running Gradle task 'assembleDebug'...
Checking the license for package Android SDK Tools in D:\PubData\Android\SDK\licenses
License for package Android SDK Tools accepted.
Preparing "Install Android SDK Tools (revision: 26.1.1)".
"Install Android SDK Tools (revision: 26.1.1)" ready.
Installing Android SDK Tools in D:\PubData\Android\SDK\tools
"Install Android SDK Tools (revision: 26.1.1)" complete.
"Install Android SDK Tools (revision: 26.1.1)" finished.
Checking the license for package Android SDK Build-Tools 30.0.3 in D:\PubData\Android\SDK\licenses
License for package Android SDK Build-Tools 30.0.3 accepted.
Preparing "Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)".
"Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)" ready.
Installing Android SDK Build-Tools 30.0.3 in D:\PubData\Android\SDK\build-tools\30.0.3
"Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)" complete.
"Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)" finished.
√  Built build\app\outputs\flutter-apk\app-debug.apk.
Installing build\app\outputs\flutter-apk\app-debug.apk...
Debug service listening on ws://127.0.0.1:64507/QBYNZVjlvMs=/ws
Syncing files to device sdk gphone64 x86 64...

 

         至此,在Androidstudio上创建Flutter项目成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/5343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Centos7 安装Git、使用

Centos7 安装Git 一、安装步骤1.1 查看版本1.2 卸载1.3 安装 二、创建仓库2.1 新增仓库2.2 新增配置项 三、管理文件3.1 文件创建3.2 文件修改、add、commit3.3 tree结构探索 四、分支4.1 创建分支:4.2 查看分支4.3 切换分支4.4 删除分支4.5 合并冲突 一、安装步骤 …

运行DeepSORT_YOLOv5_Pytorch时出现的问题

文章目录 前言问题1:Loaderyaml.FullLoader问题2:utils. -> yolov5.utils.问题3:np.float -> float问题4:np.int -> int问题5:ImportError: cannot import name time_synchronized from yolov5.utils.torch_u…

TCP协议关于速率的优化机制-滑动窗口详解

在上一章中,我们讲述了TCP协议在传输过程中的可靠性http://t.csdnimg.cn/BsImO,这里衔接上一篇文章继续讲,TCP协议的特性,TCP协议写完之后就写,Http和Https等内容吧 1. 滑动窗口 这里的滑动窗口不是指算法里面的双指…

30天拿下Rust之图形编程

概述 Rust语言以其卓越的安全性、性能和可靠性赢得了广大开发者的青睐,逐渐在系统编程、网络服务、游戏开发等领域崭露头角。随着Rust生态的日益繁荣,图形编程领域也涌现出一批优秀的框架和库,使得用Rust进行高效、安全的图形应用开发成为可能…

QT学习之QtXlsx

背景: 本来我是想提取xml中的信息存在xlsx文件中的,网上很多说是使用QtXlsx; 于是我找了一些帖, 像:https://www.cnblogs.com/liming19680104/p/14398459.html; 大家的说法都是安装第三方库到QT中&#xff…

ECharts在网页中添加可视化图标-在网页中添加交互图表+option模块案列详解

一、引言 ECharts 是一个使用 JavaScript 编写的开源可视化库,它可以在浏览器中生成交互式的图表。无论是折线图、柱状图、散点图还是饼图,ECharts 都能轻松应对。本文将带领大家了解如何在网页中添加 ECharts 可视化图标。 本章可以直接跳到第五点完整…

EOCR-SS-05W电子式过电流继电器 0.5-6A 施耐德韩国三和

三和EOCR株式会社是韩国的电动机保护器生产企业,公司由金仁锡博士(施耐德电气集团韩国执行官)于1981年建立。 2001年,为了把企业发展成性的、战略性企业,随后加入了法国施耐德电气集团公司。 EOCR主要产品有电子式电…

JAVA相关面试题分享

Java 基础知识 1.1 面向对象的特征(了解) 面向对象的特征:封装、继承、多态、抽象。 封装:就是把对象的属性和行为(数据)结合为一个独立的整体,并尽可能隐藏对 象的内部实现细节,就…

Android手势识别面试问题及回答

问题 1: 如何在Android中实现基本的手势识别? 答案: 在Android中,可以通过使用GestureDetector类来实现基本的手势识别。首先需要创建一个GestureDetector的实例,并实现GestureDetector.OnGestureListener接口来响应各种手势事件&#xff0c…

【百度Apollo】探索自动驾驶:Apollo 新版本 Beta 全新的Dreamview+,便捷灵活更丰富

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《linux深造日志》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 引入一、Dreamview介绍二、Dreamview 新特性2.1、基于模式的多场景——流程更简洁地图视角调节:调试流…

自动驾驶系统中的端到端学习

资料下载-《自动驾驶系统中的端到端学习(2020)》https://mp.weixin.qq.com/s/ttNpsn7qyVWvDMZzluU_pA 近年来,卷积神经网络显著提高了视觉感知能力。实现这一成功的两个主要因素是将简单的模块组合成复杂的网络和端到端的优化。然而&#xf…

电影交流|基于SprinBoot+vue的电影交流平台小程序系统(源码+数据库+文档)

电影交流平台目录 目录 基于SprinBootvue的电影交流平台小程序系统 一、前言 二、系统设计 三、系统功能设计 1用户信息管理 2 电影信息管理 3公告信息管理 4论坛信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取…

设备能源数据采集新篇章

在当今这个信息化、智能化的时代,设备能源数据的采集已经成为企业高效运营、绿色发展的重要基石。而今天,我们要向大家介绍的就是一款颠覆传统、引领未来的设备能源数据采集神器——HiWoo Box网关! 一、HiWoo Box网关:一站式解决…

解决clickhouse 启动报错

解决clickhouse 启动报错 Error response from daemon: driver failed programming external connectivity on endpoint clickhouse-server (b42457434cebe7d8ad024d31e4fd28eae2139bb2b5046c283bea17ce4398d5b0): Error starting userland proxy: listen tcp4 0.0.0.0:8123: …

RocketMQ MQTT 快速搭建验证

来自业务的需求,需要快速搭建一套支持 MQTT 协议的消息系统。 前期准备: 官方地址:https://github.com/apache/rocketmq-mqtt RocketMQ从4.9.3 版本开始才支持该功能,所以需要先检查 RocketMQ 的版本是否满足。 RocketMQ 部署参…

kube-prometheus部署到 k8s 集群

文章目录 **修改镜像地址****访问配置****修改 Prometheus 的 service****修改 Grafana 的 service****修改 Alertmanager 的 service****安装****Prometheus验证****Alertmanager验证****Grafana验证****卸载****Grafana显示时间问题** 或者配置ingress添加ingress访问grafana…

JAVA前端快速入门基础_javascript入门(02)

写在前面:本文用于快速学会简易的JS,仅做扫盲和参考作用 1.JavaScript函数 什么是函数:执行特定任务的代码块 1.1定义: 使用function来进行定义(类似于python里面的def 或者java和c里面的void,int这些返回类型开头)。定义规则如下: func…

物联网D1——建工程,配环境,注意事项

1.STLink、JLink、USB等驱动配置keil环境配置——下载芯片对应型号的包——导入库函数源文件、Core内核文件、对应芯片系统文件。 2.学会看芯片手册 3.在STM32微控制器中,CRH通常指的是控制寄存器高位(Control Register High)。 在这种情况下…

Linux修改文件权限命令 chmod

【例子引入】 以下面命令为例: chmod 777 Random.py 当写入下面名为Random.py的代码后: 如果直接运行,会显示权限不够 当输入 chmod 777 Random.py 更改权限后,才能够正常运行 在终端中输入 这条命令是关于Linux或Unix-like系…

[二叉树] 二叉树的前中后三序遍历#知二求一

标题:[二叉树] 二叉树的前中后三序遍历#知二求一 水墨不写bug (图片来源于网络) 正文开始: 其实这一类题就是考察对二叉树的结构理解,此类题目的二叉树一般通过数组传入,我们只需根据二叉树的就够特点对数…