Flutter错误和解决办法

2023-05-16

Flutter使用遇到的问题:
1,Expected a key while parsing a block mapping

Error on line 30, column 4 of pubspec.yaml: Expected a key while parsing a block mapping.
   assets:
   ^

异常原因:assets 前面多了个空格
解决方案:去除 assets 前面的一个空格,注意整体的标签对齐
2,RichText widgets require a Directionality widget ancestor.
很奇怪的错误,因为昨天并没有这样的问题,今天出现了,具体如下:

I/flutter (20611): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (20611): The following assertion was thrown building Text("xxx", inherit: true, color: Color(0xff2b6dea),
I/flutter (20611): size: 22.0):
I/flutter (20611): No Directionality widget found.
I/flutter (20611): RichText widgets require a Directionality widget ancestor.
I/flutter (20611): The specific widget that could not find a Directionality ancestor was:
I/flutter (20611):   RichText(softWrap: wrapping at box width, maxLines: unlimited, text: "xxx")
I/flutter (20611): The ownership chain for the affected widget is:
I/flutter (20611):   RichText ← Text ← Column ← Padding ← DecoratedBox ← Container ← Login ← [root]
I/flutter (20611): Typically, the Directionality widget is introduced by the MaterialApp or WidgetsApp widget at the
I/flutter (20611): top of your application widget tree. It determines the ambient reading direction and is used, for
I/flutter (20611): example, to determine how to lay out text, how to interpret "start" and "end" values, and to resolve
I/flutter (20611): EdgeInsetsDirectional, AlignmentDirectional, and other *Directional objects.

到目前为止不知道是什么导致的?
解决办法是:

  原代码:
  @override
  Widget build(BuildContext context) {
    return Container(
      color: Color(0xFFFFFFFF),
      padding: EdgeInsets.fromLTRB(0.0, 78.0, 0.0, 5.0),
      child: Column(
          crossAxisAlignment: CrossAxisAlignment.center,
          children: <Widget>[
          Image.asset("images/logo.png", width: 48.0, ),
          new Container(height: 5.0),
          Text(
            "Helloword",
            style: TextStyle(
              color: Color(0xFF2B6DEA),
              fontSize: 22.0,
            ),
          ),
           ],
        ),
    );
  }
解决问题的代码:
@override
  Widget build(BuildContext context) {
    return Container(
      color: Color(0xFFFFFFFF),
      padding: EdgeInsets.fromLTRB(0.0, 78.0, 0.0, 5.0),
      child: Column(
          crossAxisAlignment: CrossAxisAlignment.center,
          children: <Widget>[
          Image.asset("images/logo.png", width: 48.0, ),
          new Container(height: 5.0),
          Text(
            "Helloword",
            style: TextStyle(
              color: Color(0xFF2B6DEA),
              fontSize: 22.0,
            ),
     		textDirection: TextDirection.ltr
          ),
           ],
        ),
    );
  }

关键是下面这句代码:(不明觉厉)
textDirection: TextDirection.ltr
3,TextField widgets require a Material widget ancestor.

I/flutter (20611): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (20611): The following assertion was thrown building TextField(decoration: InputDecoration(hintText:
I/flutter (20611): "输入手机号码", prefixIcon: Icon(IconData(U+0E7FD))), autofocus: true, autocorrect: true, max length
I/flutter (20611): enforced, onTap: null, dirty, state: _TextFieldState#8027d):
I/flutter (20611): No Material widget found.
I/flutter (20611): TextField widgets require a Material widget ancestor.
I/flutter (20611): In material design, most widgets are conceptually "printed" on a sheet of material. In Flutter's
I/flutter (20611): material library, that material is represented by the Material widget. It is the Material widget
I/flutter (20611): that renders ink splashes, for instance. Because of this, many material library widgets require that
I/flutter (20611): there be a Material widget in the tree above them.
I/flutter (20611): To introduce a Material widget, you can either directly include one, or use a widget that contains
I/flutter (20611): Material itself, such as a Card, Dialog, Drawer, or Scaffold.
I/flutter (20611): The specific widget that could not find a Material ancestor was:
I/flutter (20611):   TextField(decoration: InputDecoration(hintText: "输入手机号码", prefixIcon: Icon(IconData(U+0E7FD))),
I/flutter (20611):   autofocus: true, autocorrect: true, max length enforced, onTap: null)
I/flutter (20611): The ancestors of this widget were:
I/flutter (20611):   Column(direction: vertical, mainAxisAlignment: start, crossAxisAlignment: center)
I/flutter (20611):   Padding(padding: EdgeInsets(0.0, 78.0, 0.0, 5.0))
I/flutter (20611):   DecoratedBox(bg: BoxDecoration(color: Color(0xffffffff)))
I/flutter (20611):   Container(padding: EdgeInsets(0.0, 78.0, 0.0, 5.0), bg: BoxDecoration(color: Color(0xffffffff)))
I/flutter (20611):   Login
I/flutter (20611):   [root]

TextField widget需要被包裹在Scaffold widget中,否则会报错 textfield widgets require a material widget ancestor
4, No MediaQuery ancestor could be found starting from the context that was passed to MediaQuery.of()

I/flutter (20611): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (20611): The following assertion was thrown building Login:
I/flutter (20611): MediaQuery.of() called with a context that does not contain a MediaQuery.
I/flutter (20611): No MediaQuery ancestor could be found starting from the context that was passed to MediaQuery.of().
I/flutter (20611): This can happen because you do not have a WidgetsApp or MaterialApp widget (those widgets introduce
I/flutter (20611): a MediaQuery), or it can happen if the context you use comes from a widget above those widgets.
I/flutter (20611): The context used was:
I/flutter (20611):   Scaffold(dirty, state: ScaffoldState#9a79e(lifecycle state: initialized, tickers: tracking 1
I/flutter (20611):   ticker))

造成的原因是,我直接从main.dart的runApp跳转到一个StatefulWidget,而该StatefulWidget返回的是Scaffold
5,Finished with error: FormatException: Bad UTF-8 encoding 0xe4 (at offset 9)
这是由于app的版本为release找不到keystore文件

Finished with error: FormatException: Bad UTF-8 encoding 0xe4 (at offset 9)

检查android–app–build.gradle里的signingConfigs是否正确
6,Because xxx requires SDK version 2.0.0-dev.68.0 3.0.0, version solving failed.
Flutter错误
下载github里的Flutter项目,运行之后,报如下错误

The current Dart SDK version is 2.0.0-dev.58.0.flutter-f981f09760.
Because sample_catalog requires SDK version >=2.0.0-dev.68.0 <3.0.0, version solving failed.

从字面意思,大概就是说Dart的版本是2.0的,但项目需要大于2.0的Dart版本。
这个错误导致的原因是,依赖的包,或者自己项目本身就是用了高版本的dart.
我的解决办法是:
AndroidStudio – Tools – Flutter – Flutter Upgrade
运行结果如下(日志缩减了些)

Upgrading Flutter from C:\Users\Hzx\flutter...
From https://github.com/flutter/flutter
   c7ea3ca377..5391447fae  beta       -> origin/beta
 * [new branch]            gallery    -> origin/gallery
 * [new branch]            maryx-animated-container -> origin/maryx-animated-container
   5413560415..aca3aba10e  master     -> origin/master
 * [new branch]            stable     -> origin/stable
 * [new tag]               v1.1.5     -> v1.1.5
Checking out files:  10% (239/2211)   
Checking out files: 100% (2211/2211), done.
Updating c7ea3ca377..5391447fae
 .../app/src/main/res/mipmap-mdpi/ic_launcher.png   |   Bin
 .../android}/gradle.properties                     |     0
 .../src/main/res/mipmap-hdpi/ic_launcher.png       |   Bin 0 -> 544 bytes
 .../common}/.idea/modules.xml.tmpl                 |     0
 .../LaunchImage.imageset/LaunchImage@3x.png        |   Bin 0 -> 68 bytes
 2140 files changed, 204402 insertions(+), 95793 deletions(-)
 mode change 100644 => 100755
Upgrading engine...
Checking Dart SDK version...
Downloading Dart SDK from Flutter engine 7375a0f414bde4bc941e623482221db2fc8c4ab5...
Unzipping Dart SDK...
Building flutter tool...
Running pub upgrade...
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
Downloading package sky_engine...                                0.6s
Downloading common tools...                                      1.8s

运行完之后,发现红色提示都消失了。
这个时候可以run项目,发现项目正在下载包。
可以看到“Dart Packages/ Dart SDK/ Flutter Plugins”等SDK包
第一次运行会比较久
当然,还有一种方法,就是自己手动下载Flutter,下载地址是:https://github.com/flutter/flutter

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter错误和解决办法 的相关文章

  • Cloud Functions,删除Firestore SubCollections,是否需要AdminToken?

    我正在尝试构建可调用的云函数 当用户删除帖子时 它也会尝试删除评论 这是帖子的子集合 所以我看到了这个例子并像文档示例一样实现 const admin require firebase admin const firebase tools
  • 查找文本的确切边界

    我需要知道一段文本的确切边界 相当于获取文本边界 https developer android com reference android graphics Paint html对于安卓 我意识到这在某种程度上与 Flutter 的设计背
  • 尝试在模拟器上安装第二个 flutter 应用程序时出错

    我创建了一个简单的 flutter 应用程序并在 android 模拟器上运行它 效果还不错 现在我创建了另一个 当我尝试在模拟器上运行它时 我得到 Error ADB exited with exit code 1 adb failed
  • 如何在flutter中的命名路由中传递多个参数

    我正在尝试将多个参数传递给命名路由 我尝试了很多事情 但到目前为止还没有成功 谁能告诉我如何实现这一目标 路线 dart import package flutter cupertino dart import package flutte
  • Flutter 中的自动关闭对话框

    我想在打开后几秒钟自动关闭对话框 我找到的解决方案是调用Navigator of context pop 延迟并且有效 但如果我在执行 Navigator pop 命令之前手动关闭它 通过单击外部 就会出现问题 然后 Navigator p
  • 使用 Firestore 和 Flutter 填充数据表(使用 StreamBuilder)

    如何使用 StreamBuilder 填充数据表 下面是我的代码 new StreamBuilder stream widget returnStreamWithActiveKeysOnly builder BuildContext con
  • Flutter- GestureDetector 检测水平和垂直拖动的方向

    我在用GestureDetector并没有找到任何onXYZ告诉您拖动方向的事件 你试过了吗onPanUpdate details 方法 以下是您可以如何做到这一点 GestureDetector onPanUpdate details i
  • Flutter - 如何将用户数据传递到所有视图

    我是 Flutter 世界和移动应用程序开发的新手 并且正在努力解决如何在整个应用程序中传递用户数据的问题 我已经尝试了几件事 但似乎没有一个很好 我确信我应该遵循一些最佳实践模式 因为它使示例更容易 所以我使用 firebase 进行身份
  • 如何在 Flutter 的 widget 树中打开新的 MaterialPageRoute 作为子项

    在下面的示例中 当我推送新的 MaterialPageRoute 时 它 会在与 Flutter 小部件树中的 Home 小部件相同的级别上创建 我希望将它作为小部件 Home 的子部件 因此 Home 将是 Child 小部件的父部件 这
  • Flutter包读取自己的资产

    我有一个带有 assets 文件夹的模块 该文件夹与我的 pubspec yaml 文件位于同一目录中 在我的资产文件夹中 有 test txt 和 simpleObject json flutter assets assets test
  • 类型“Null”不是类型“Widget”的子类型

    我正在编写一个关于 flutter 的代码 以便在 android ios 和 web 上使用 Google 登录 但我第一时间就遇到了这个错误 我在 Android 模拟器上运行它来检查它是否正常工作 我现在还没有将其设置为网络 在模拟器
  • 设置 Flutter 底部导航栏不活动

    我有一个带有底部导航栏的应用程序 BottomNavigationBar type BottomNavigationBarType fixed items BottomNavigationBarItem icon Image asset a
  • Flutter VideoPlayer 无法播放 YouTube 视频

    我正在开发 flutter 应用程序并使用 ext video player 播放 YouTube 视频 当我在视频播放器上播放频道视频时 它不起作用 但我添加了 YouTube 上的任何视频 播放器正在工作 为什么会发生这样的事 impo
  • 无需导航到设置页面即可打开定位服务?颤动飞镖

    我们正在从 Flutter 迁移到 Flutter 我们用这个线程来 在 Flutter 中如何实现这一点 当前导航到设置的临时代码 Future getCurrentLocation async Position position try
  • flutter 聊天应用程序上的消息顺序不正确

    我刚刚根据教程完成了一个基本的聊天应用程序 新消息应该显示在底部 但这种情况没有发生 当我删除 保存并再次添加时reversed排队 final messages snapshot data documents reversed 然后它似乎
  • 如何实现Tabbar中每个选项卡的搜索动作

    我有一个页面 TabBar 中有 2 个选项卡 如下所示 class SearchByCityOrPerson extends StatefulWidget SearchByCityOrPerson Key key this title s
  • Flutter:日期格式无效 24-09-2022

    for date comparison DateTime stdt DateTime parse postList startDate toString DateTime endt DateTime parse postList endDa
  • 如何在flutter中绘制自定义形状

    我正在尝试在我的应用程序中绘制这样的自定义形状 尝试使用自定义画家进行绘制 但尚未弄清楚如何获得这种形状 我认为它实际上只是一个带有自定义边框的容器 但甚至不知道从哪里开始 我感兴趣的只是形式 而不是内容 或者 如果有人知道如何绘制底部较薄
  • 如何在 Flutter 中解码 Gzip Http 响应?

    我是颤振新手 我正在发出网络请求 并且得到了正确的响应 但数据已被压缩 我已经在 Swift 中解压了相同的内容 但是对于 Flutter 我无法做到这一点 有人可以帮忙吗 这是我尝试过的 import dart convert impor
  • 将元素大小调整为屏幕宽度/高度的百分比

    是否有一种简单的 非 LayoutBuilder 方法来调整元素相对于屏幕尺寸 宽度 高度 的大小 例如 如何将 CardView 的宽度设置为屏幕宽度的 65 不能在里面完成build方法 显然 因此必须推迟到构建后 是否有一个首选的地方

随机推荐

  • 【C++】链表反转逆序|建立、删除、修改、插入|linux内核链表与普通链表

    目录 C 43 43 实现链表逆序 链表的建立 删除 修改 插入 linux内核链表与普通链表 C 43 43 实现链表逆序 实现链表逆序 xff0c 首先要有一个链表 xff0c 下面是链表的结构体 xff1a typedef struc
  • https 自签名SSL证书

    介绍 TLS或称传输层安全性 xff0c 及其前身SSL xff08 代表安全套接字层 xff09 是用于将正常流量包装在受保护的加密包装中的Web协议 使用这种技术 xff0c 服务器可以在服务器和客户端之间安全地发送流量 xff0c 而
  • Gitlab安装及配置

    主要内容 xff1a 使用docker运行 gitlab xff1b 配置LDAP及邮箱 xff1b 配置管理员账号 xff1b 配置邮箱通知 xff1b 关闭用户注册 xff1b 安装 我们使用docker来安装Gitlab xff0c
  • windows 文件夹正在使用 “操作无法完成,因为其中的文件夹或文件已在另一程序中打开“ 解决办法

    解决办法 xff1a 右键状态栏 gt 任务管理器 gt 性能 gt 打开资源监视器 gt CPU gt 在 关联的句柄 处搜索被占用的文件夹名称 现象 解决办法 第1步 第2步 第3步 例如搜索 test 第4步 右键找到占用的程序 第5
  • Windows服务器更新服务的配置-client

    0x01 WSUS客户端 wsus客户端可以使windows的各种系统 windows7 8 10 server 无须安装任何软件 0x02 客户端配置 wsus客户端通过配置本地组策略来实现 运行中输入 xff1a gpedit msc
  • Anime4K:目前最热的开源实时动漫放大算法,Github上一周收获2600星!

    点击我爱计算机视觉标星 xff0c 更快获取CVML新技术 今天跟大家介绍一款动漫画面放大算法Anime4K xff0c 目前最热的开源 实时 视频动漫放大算法 https github com bloc97 Anime4K 一周内该库在G
  • 统计学:离散型和连续型随机变量的概率分布

    主要随机变量一览表 随机变量概率分布均值方差一般离散型变量 p x 的 表 公 式 或 者 图 x x p x x x 2 p x 二项分布 p x 61 C x n p x
  • Stata基本功能及其函数实现

    Stata简介 xff1a Stata使用简单 xff0c 功能强大 xff0c 是数据分析中常用的统计计量软件 本人使用的是Stata14 xff0c 如若需要 xff0c 可评论留言 xff01 1 Stata基本描述 1 1主窗口 如
  • MySQL安装过程问题:服务器名无效,发生系统错误 5 拒绝访问

    1 服务器名无效 安装好MySQL之后 xff0c 使用CMD系统命令程序 xff0c 输入命令启动MySQL xff0c 提示 服务器名无效 原因1 xff1a 服务器名字错误 解决方法 检查命令行中服务器名是否正确 xff0c MySQ
  • R语言基础画图/绘图/作图

    R语言基础画图 R语言免费且开源 xff0c 其强大和自由的画图功能 xff0c 深受广大学生和可视化工作人员喜爱 xff0c 这篇文章对如何使用R语言作基本的图形 xff0c 如直方图 xff0c 点图 xff0c 饼状图以及箱线图进行简
  • 【网站】IIS配置/搭建PHP环境的网站教程

    原文 xff1a https www fujieace com php iis html 今天一位群友想新搞一个万能门店小程序网站 xff0c 由于他的服务器上面已经存在了很多的老站 xff0c 用的IIS6 0服务 xff0c 现在这个网
  • MySQL数据库事务处理

    事务处理用于有效记录某机构感兴趣的业务活动 xff08 称为事务 xff09 的数据处理 xff08 例如销售 供货的定购或货币传输 xff09 通常 xff0c 联机事务处理 OLTP 系统执行大量的相对较小的事务 百度百科 事务处理是将
  • 神农尝百草---Windows环境下为Python3.X安装basemap

    basemap是matplolib的一个插件 xff0c 提供了许多将地理位置 xff08 如经度和纬度 xff09 转化为二维matplotlib图的方式 xff0c 是地图数据可视化的重要工具 本人Python是3 6版本 xff0c
  • 机器学习之朴素贝叶斯(NB)分类算法与Python实现

    朴素贝叶斯 xff08 Naive Bayesian xff09 是最为广泛使用的分类方法 xff0c 它以概率论为基础 xff0c 是基于贝叶斯定理和特征条件独立假设的分类方法 一 概述 1 简介2 条件概率与贝叶斯定理3 朴素贝叶斯分类
  • Python批量修改文件名

    工作中经常会遇到需要批量修改文件名的情况 xff0c 比如 xff1a 有这样一个文件夹 xff0c 里面是249个国家的国家 xff0c 按照ISO 3166 1标准中的国家二位简称进行命名 xff1a 现在面临这样的需求 xff0c 需
  • Excel实战:时间转换、字符串拆分和多条件判断

    1 概述 1 1案例 有如下通话记录数据 xff0c 包括主叫 被叫和通话时长 43 43 43 43 43 span class hljs string date caller callee duration span 43 43 43
  • Vue3 script setup 语法糖(升级版)

    序 xff1a 使用了vue3后发现变量每次都必须return xff0c 不免很麻烦 xff0c 所以在vue3 2添加了script setup 语法糖 xff0c 本次修改主要从以下5个方面做了修改 1 SSR xff1a 服务端渲染
  • 基于kurento-media-server 搭建流媒体服务器

    关于webrtc 是做什么的 xff0c 网上有很多介绍就不多说了 我的需求是通过webrtc的开源实现 xff0c 搭建本地的流媒体服务器 xff0c 进行rtsp视频流转发 xff0c 如果可以再叠加一些机器视觉的内容 本篇内容主要解决
  • OSPF 路由协议基础实验

    实验介绍 关于本实验 开放式最短路径优先 OSPF xff08 Open Shortest Path First xff09 是 IETF 组织开发的一个基于链路状态的内部网关协议 xff08 Interior Gateway Protoc
  • Flutter错误和解决办法

    Flutter使用遇到的问题 xff1a 1 xff0c Expected a key while parsing a block mapping Error on line 30 column 4 of pubspec yaml Expe