热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Flutter学习指南:开发环境搭建

本文由爱学园平台进行联合编辑整理输出原作者:爱学园——莫比乌斯环虽说Flutter出现有一段时间了,但大家对它的了解却不是很深,但直到20

本文由 爱学园平台 进行联合编辑整理输出

原作者:爱学园——莫比乌斯环

虽说Flutter出现有一段时间了,但大家对它的了解却不是很深,但直到2018谷歌开发者大会在上海的召开,它才真正进入开发者的世界。Flutter的出现为跨平台开发开辟了新的方向,但是与之相应的中文学习文档却不是很多,因此针对这一考虑我们会持续输出一系列Flutter方面的实践性学习文档以及配套demo供大家学习。万里之行始于足下,下面我们就开始Flutter入坑的第一篇——Flutter开发环境搭建。

Flutter 安装

关于Flutter的安装,本文以 macOS 系统为例,就 macOS 系统下Flutter的安装细节进行说明。其它平台(Windowns、Linux)可参考官方文档安装步骤。

自备梯子或使用国内镜像

做过开发的都晓得,国内访问Google是不行的,因此此处我们需要做一些前期配置,拥有梯子的可自行跳过。没有梯子的同志也不用担心,Flutter官方并不会放弃我们这么重要的用户,他们专门为中国开发者搭建了临时镜像,大家可以将环境变量加入到当前用户环境中,具体操作如下:

export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

这里的配置仅限当前窗口使用,如果需要永久使用请参考后面小节更新环境变量配置 注意:此镜像为临时镜像,并不能保证一直可用,读者可以关注Using Flutter in China以获得有关镜像服务器的最新动态。

获取Flutter SDK

获取 Flutter 有多种方式:

  1. 去Flutter官网下载稳定可用的安装包,转到下载页
  2. 第一种方式可能需要翻墙,也可直接从Github上Flutter项目下去下载安装包,转到下载页。对应指令git clone -b dev https://github.com/flutter/flutter.git(可针对当前版本做命令的调整)

上述两种第一种需要解压,第二种不需要,总之将它们放置到您想放到的地方

更新环境变量

大家都知道此时flutter还不是全局变量,为了方便我们以后的调用,这里我们需要做一些全局性的配置,具体命令如下:

export PATH= ~/developer/flutter/bin:$PATH //flutter 存放位置,替换为您自己的即可
export ANDROID_HOME="~/Library/Android/sdk" //android sdk目录,替换为您自己的即可
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

打开(或创建)~/.bash_profile文件,将下面的命令粘贴进去,注意:此处Flutter与Android SDK的路径需要替换为自己的,保存之后运行source $~/.bash_profile刷新当前终端窗口。

运行 flutter doctor

经过上面的步骤,此时我们就可以运行以下命令查看是否需要安装其它依赖项来完成安装,这个过程第一次可能需要耗费一段时间,下次就会快很多:

flutter doctor

该命令依赖检查您的环境并在终端窗口显示报告。如下是我运行输出的结果:

运行异常情况:

[-] Android toolchain - develop for Android devices• Android SDK at /Users/obiwan/Library/Android/sdk✗ Android SDK is missing command line tools; download from https://goo.gl/XxQghQ• Try re-installing or updating your Android SDK,visit https://flutter.io/setup/#android-setup for detailed instructions.

一般的错误会是xcode或Android Studio版本太低、或者没有ANDROID_HOME环境变量等,请按照提示解决。

运行正常情况:

这里我们只关注红色方框内的,这里有四部分下面逐一解释(Android,先不考虑IOS情况,处理一致):
  • 第一部分监测的是Flutter相关依赖项结果,如果第一次运行会先去下载;
  • 第二部分针对Android SDK和Java方面的检测,如果缺失,对应条目前方会显示✗红色标记,那就需要您根据缺失条目提示进行配置,这里不做深入;
  • 第三部分针对编译器(Android Studio)内部插件(Flutter、Dart)的安装检测,插件的安装将会在下一章节详细讲解;
  • 第四部分是对连接设备的检测,我这里没有启动设备,则显示无可用设备。

编译器Flutter插件安装

适合Flutter使用的编译器有很多(IDE、VSCode、Xcode),这里我以Android Studio为例演示下如何安装Flutter相关插件(注意:这里Android Studio需要 3.0或更高版本):

  1. 首先启动Android Studio,打开插件首选项(Preferences>Plugins on macOS, File>Settings>Plugins on Windows & Linux);
  2. 选择 Browse repositories…, 选择 Flutter 插件并点击 install(此处Dart插件回一起安装);
  3. 重启Android Studio后插件生效;

体验Flutter

经过上面的步骤,Flutter需要的相关环境基本已经配置完毕,下面我们就创建一个工程实践下,我们的配置是否可行:

创建应用

  1. 打开Android Studio 选择File>New Flutter Project
  2. 选择Flutter application作为project类型,然后点击Next
  3. 输入项目名称(如myapp),然后点击Next
  4. 点击Finish
  5. 创建完成

下面请看默认Flutter工程的目录结构:

在项目目录中,您应用程序的代码位于 lib/main.dart.

运行

点击上述绿色三角执行程序,您有可能遇到一些异常现象比如:dart not support 或 flutter not found sdk 等等,那么你就得查看下如下两处地方是否配置正确: 开启Dart支持:
Flutter SDK路径配置:
然后再次运行,即日志界面的执行过程如下:
查看模拟器运行结果--HelloWorld:
到此说明我们的开发环境安装正确,但不代表您们也会这么顺利,毕竟每个人都电脑环境不一致,如遇到问题可给我留言,我们一起探讨,~谢谢~!

注释:下一篇我们将会带领您如何一步步创建我们第一个Flutter应用与相关代码结构分析

       致亲爱的读者朋友们,从今日起我们《爱学园平台》将会持续推出Flutter实践性学习文档以及疑难问题分析,如果您有需要,但我们还没有输出的疑难问题,您也可以给我们留言!我们将会根据您的需求优先输出,谢谢!



推荐阅读
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • 本文深入探讨了 Git 与 SVN 的高效使用技巧,旨在帮助开发者轻松应对版本控制中的各种挑战。通过详细解析两种工具的核心功能与最佳实践,读者将能够更好地掌握版本管理的精髓,提高开发效率。 ... [详细]
  • 在CentOS 7上部署WebRTC网关Janus
    在CentOS 7上部署WebRTC网关Janus ... [详细]
  • Parallels Desktop for Mac 是一款功能强大的虚拟化软件,能够在不重启的情况下实现在同一台电脑上无缝切换和使用 Windows 和 macOS 系统中的各种应用程序。该软件不仅提供了高效稳定的性能,还支持多种高级功能,如拖放文件、共享剪贴板等,极大地提升了用户的生产力和使用体验。 ... [详细]
  • 尽管我们尽最大努力,任何软件开发过程中都难免会出现缺陷。为了更有效地提升对支持部门的协助与支撑,本文探讨了多种策略和最佳实践,旨在通过改进沟通、增强培训和支持流程来减少这些缺陷的影响,并提高整体服务质量和客户满意度。 ... [详细]
  • 本文探讨了 Kafka 集群的高效部署与优化策略。首先介绍了 Kafka 的下载与安装步骤,包括从官方网站获取最新版本的压缩包并进行解压。随后详细讨论了集群配置的最佳实践,涵盖节点选择、网络优化和性能调优等方面,旨在提升系统的稳定性和处理能力。此外,还提供了常见的故障排查方法和监控方案,帮助运维人员更好地管理和维护 Kafka 集群。 ... [详细]
  • 本文探讨了资源访问的学习路径与方法,旨在帮助学习者更高效地获取和利用各类资源。通过分析不同资源的特点和应用场景,提出了多种实用的学习策略和技术手段,为学习者提供了系统的指导和建议。 ... [详细]
  • 在Ubuntu系统中配置Python环境变量是确保项目顺利运行的关键步骤。本文介绍了如何将Windows上的Django项目迁移到Ubuntu,并解决因虚拟环境导致的模块缺失问题。通过详细的操作指南,帮助读者正确配置虚拟环境,确保所有第三方库都能被正确识别和使用。此外,还提供了一些实用的技巧,如如何检查环境变量配置是否正确,以及如何在多个虚拟环境之间切换。 ... [详细]
  • 本文探讨了Android系统中支持的图像格式及其在不同版本中的兼容性问题,重点涵盖了存储、HTTP传输、相机功能以及SparseArray的应用。文章详细分析了从Android 10 (API 29) 到Android 11 的存储规范变化,并讨论了这些变化对图像处理的影响。此外,还介绍了如何通过系统升级和代码优化来解决版本兼容性问题,以确保应用程序在不同Android版本中稳定运行。 ... [详细]
  • 理解和应用HTTP请求中的转发与重定向机制
    在HTTP请求处理过程中,客户端发送请求(通常简称为req),服务器进行相应处理后返回响应(通常简称为res)。理解和应用客户端的转发与重定向机制是前端开发的重要内容。这两种机制在Web开发中具有关键作用,能够有效管理和优化用户请求的处理流程。转发机制允许服务器内部将请求传递给另一个资源,而重定向则指示客户端向新的URL发起新的请求,从而实现页面跳转或资源更新。掌握这些技术有助于提升应用的性能和用户体验。 ... [详细]
  • FastDFS Nginx 扩展模块的源代码解析与技术剖析
    FastDFS Nginx 扩展模块的源代码解析与技术剖析 ... [详细]
  • 在尝试为 Unity 编译一个简单的 Java 库时,运行 `ant jar` 命令后遇到了 Java I/O 异常。具体错误信息为“无法启动程序 ${aAPT},错误代码 2”,这通常表示指定的文件或目录不存在。此问题可能是由于环境配置不正确或路径设置有误导致的。建议检查相关路径和环境变量,确保所有依赖项都已正确安装和配置。 ... [详细]
  • 解决MySQL 5.1服务器无法正确识别中文字符的问题
    在使用MySQL 5.1服务器时,可能会遇到无法正确识别中文字符的问题。由于相关资料较少且不够全面,本文将详细阐述解决方案。首先,需要检查MySQL的配置文件,确保字符集设置正确,并通过命令行工具验证当前的字符编码配置。此外,建议更新到最新版本以避免此类问题。 ... [详细]
  • 本文详细探讨了OpenCV中人脸检测算法的实现原理与代码结构。通过分析核心函数和关键步骤,揭示了OpenCV如何高效地进行人脸检测。文章不仅提供了代码示例,还深入解释了算法背后的数学模型和优化技巧,为开发者提供了全面的理解和实用的参考。 ... [详细]
author-avatar
手机用户2602879695
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有