老司机带你快速上手调试Flutter项目
对于开发项目来说,调试控制工具是不可少的,开发者是一定要掌握调试工具的使用,一来是为了查看log日志,一来是为了排查错误,再一个原因是可以查看内存占用情况,以便后续性能优化。
Flutter的调试主要有3个需要去关注的,一个是Flutter Outline,一个是Flutter Inspector,还有一个是log控制台。前者主要是用于视图预览,后者是用于性能调试,log控制台用于查看log信息以及定位错误等。
下面就详细的讲解一下如何使用Flutter的调试工具。
一、基础配置和设置
在讲解调试工具之前,先来看看有关的设置选项,点击菜单栏File-->Settings-->Languages & Frameworks --> Flutter,打开之后设置如图2.6.1所示,重点字段我都翻译成了中文,帮助大家理解,如果不是很熟悉这个设置,推荐大家按照我这样去配置。
【提示】如果Flutter Outline和Flutter Inspector没有出现在侧边栏(默认是在右边侧边栏),建议重启Android Studio,如果还没有出现,建议卸载Flutter插件,重新安装一次,安装完记得重启Android Studio。
二、介绍一下log控制台
控制台是调试程序必须要看的一个辅助工具,控制台有两个:一个是调试Android程序的 LogCat调试台,另一个是Flutter里面自带的Run控制台。LogCat调试台主要是查看原生Android有关的日志的,我们这里就不详细讲解它,我们重点来看了解一下Run控制台。
Run控制台在工程创建的时候是没有的,当我们运行项目的时候,Run控制台就会出现在底部菜单栏,如图所示:
这里面有几个工具,我简单的描述一下每个工具的作用:
首先我们看左边第一列的4个工具的作用,如图所示:
然后再看看第二列的2个工具的作用,如图所示:
然后再看看横向的5个工具的作用,如图所示:
最后看看主体内容的介绍,如图所示:
三、Dart Analysis
当我们安装了Dart插件之后,这个工具就会出现在底部工具栏面板里面。Dart Analysis这个工具从字面意思就可以知道它主要是用来分析Dart语法的。比如语法错误或者语法警告等。
比如声明变量未使用,这个属于语法警告,如图中的61行所示:
比如语法错误,如图2.6.2.2所示:
四、Flutter Outline
Flutter Outline主要是用来视图预览的。当我们运行项目之后,就会看到Flutter Outline里面会显示每一个类,成员变量,方法名,参数等详细信息,通过Flutter Outline考验快速定位到要查看的相关类或者方法字段信息。具体功能如图2.6.3.1所示:
这里主要讲一下上方并排的7个工具的功能,以及右边那个漏斗形状的蓝色图标的作用。
图标 | 描述 |
---|---|
| 添加一个Center组件。 |
| 添加一个Padding组件。 |
| 添加一个Column组件。 |
| 添加一个Row组件。 |
| 用来重构方法。 |
| 将组件向上移动。 |
| 将组件向下移动。 |
| 移除组件。 |
| 点击它,就会只显示组件,再次点击就显示完整的代码结构。例如上例的fluter_demo中,点击了这个图标之后,显示完整的代码结构,如下图所示: |
四、Flutter Inspector
。。。待续
五、代码中的调试
。。。待续
【好消息】我的微信公众号正式开通了,关注一下吧!微信搜索 Flutter那些事
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
4-VI--☆ListView的封装支持多种条目
零、前言 [1.]封装了一晚,总算把多条目的ListView封装了一下 listview.gif 一、使用 1.初始化数据 ArrayList<Message> messages = new ArrayList<>(); messages.add(new Message("你瞅啥?!", "巫缨:", 0)); messages.add(new Message("瞅你怎滴!!", "捷特:", 1)); messages.add(new Message("2018-8-13", "9:30", 2)); messages.add(new Message("你再瞅试试!", "巫缨:", 0)); for (int i = 0; i < 100; i++) { if (i % 3 == 0) { messages.add(new Message("我试了怎滴!!--1", "捷特:", 1)); } else if (i % 3 == 1) { messages.add(new Message("2018-8-13", "9:30", 2)); } else...
- 下一篇
跨程序共享数据——Content Provider 之 ContentResolver基本用法 & 一个读取系统联系人的Demo
本模块共有四篇文章,参考郭神的《第一行代码》,对Content Provider的学习做一个详细的笔记,大家可以一起交流一下: 跨程序共享数据——Content Provider 之 运行时权限解析以及申请的实现(可完美解决java.lang.SecurityException:Permission Denial 问题) 跨程序共享数据——Content Provider 之 ContentResolver基本用法 & 一个读取系统联系人的Demo(即本文) 跨程序共享数据——Content Provider 之 创建自己的内容提供器 Content Provider 之 最终弹 实战体验跨程序数据共享(结合SQLiteDemo) 内容提供器的用法一般有两种, 一种是使用现有的内容提供器来读取和操作相应程序中的数据, 另一种是创建自己的内容提供器给我们程序的数据提供外部访问接口。 那么接下来我们就一个一个开始学习吧,首先从使用现有的内容提供器开始。 如果一个应用程序通过内容提供器对其数据提供了外部访问接口,那么任何其他的应用程序就都可以对这部分数据进行访问。 Android系统...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- Mario游戏-低调大师作品
- MySQL8.0.19开启GTID主从同步CentOS8
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS关闭SELinux安全模块