安卓开发学Flutter——安装与构建环境的一些注意点(第一篇)

简介: Flutter是多平台开发的利器,我在半年前和技术交流群就接触到了,但一直没有去主动学习,但为了未来的长足发展,还是去认真学习一下

前言

Flutter是多平台开发的利器,我在半年前和技术交流群就接触到了,但一直没有去主动学习,但为了未来的长足发展,还是去认真学习一下,下面我们就从安装和部署环境开始,本教程是我亲自实践所得,可能具有时效性,如果失效,请关注官网的教程(flutter.cn/docs/get-st… ,本教程基于Windows平台。

正篇

安装Android Studio

安卓开发当然少不了Android Studio,这第一步就先省略了,下面默认有Android Studio。

下载Flutter包

首先,本人是使用GitHub去获取最新的Flutter包的(flutter/flutter: Flutter makes it easy and fast to build beautiful apps for mobile and beyond (github.com)),当然你也可以在官网下载最新的包(在 Windows 操作系统上安装和配置 Flutter 开发环境 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter),个人感觉GitHub的GitHub Desktop软件还是很好用的,

这是我拉取的,选择的stable分支:


网络异常,图片无法展示
|


首先,先在GitHub网站上复制URL


网络异常,图片无法展示
|


然后选择克隆库,将复制的URL粘贴上,再选好本地存储位置


网络异常,图片无法展示
|

网络异常,图片无法展示
|


最后选择克隆即可,当然使用git拉取也行,如果你更熟悉Git命令或者喜欢用其他方式也可,只要最终可以获取到代码资源。

配置环境

成功获取到代码后再去你选择存储的地方找到flutter的bin路径复制下来


网络异常,图片无法展示
|


然后在设置中系统这一栏找到系统信息点击打开,找到高级系统设置打开


网络异常,图片无法展示
|


选择环境变量


网络异常,图片无法展示
|


找到系统变量的Path这栏,点击选中然后点击编辑:


网络异常,图片无法展示
|


再把我们刚刚复制的flutter的bin路径新建复制进去,最后全部选择确定即可。


网络异常,图片无法展示
|


我们在Win+R 中输入cmd回车,然后在窗口输入命令

where flutter dart

网络异常,图片无法展示
|


这一步要是出现问题,如下,同时官方给出解决方法:


网络异常,图片无法展示
|


接下来官网叫我们利用flutter命令flutter doctor,但一般会出现几个X的地方:


网络异常,图片无法展示
|


通过查阅相关博客,已有解决方法: 1.配置用户环境变量,因为国内有些限制访问不了,所以要配置国内的:

变量名:FLUTTER_STORAGE_BASE_URL
变量值:https://storage.flutter-io.cn
变量名:PUB_HOSTED_URL
变量值:https://pub.flutter-io.cn

网络异常,图片无法展示
|


还有这一步:找到Flutter文件夹里面这一路径: ...\flutter\packages\flutter_tools\lib\src, 然后找到文件http_host_validator.dart:


网络异常,图片无法展示
|


右键选择编辑: 如果有编辑器可以选择编辑器,没有选择打开方式使用更多方式的记事本也可


网络异常,图片无法展示
|

网络异常,图片无法展示
|


然后和上面两个添加用户变量一样,将这个文件内容相应默认配置替换:


网络异常,图片无法展示
|

import 'dart:async';
import 'base/io.dart';
import 'base/platform.dart';
import 'doctor_validator.dart';
import 'features.dart';
// Overridable environment variables
//---------------------------------------------------替换
const String kEnvPubHostedUrl = 'PUB_HOSTED_URL';
const String kEnvCloudUrl = 'FLUTTER_STORAGE_BASE_URL';
//---------------------------------------------------替换
const String kDoctorHostTimeout = 'FLUTTER_DOCTOR_HOST_TIMEOUT';
/// Common Flutter HTTP hosts.
//---------------------------------------------------替换
const String kPubDevHttpHost = 'https://pub.flutter-io.cn/';
const String kgCloudHttpHost = 'https://storage.flutter-io.cn/';
//---------------------------------------------------替换
/// MacOS specific required HTTP hosts.
const List<String> macOSRequiredHttpHosts = <String>[
  'https://cocoapods.org/',
];
/// Android specific required HTTP hosts.
List<String> androidRequiredHttpHosts(Platform platform) {
  return <String>[
    // If kEnvCloudUrl is set, it will be used as the maven host
    if (!platform.environment.containsKey(kEnvCloudUrl))
    //---------------------------------------------------替换
      'https://dl.google.com/dl/android/maven2/',
      //---------------------------------------------------替换

此外,maven的地址也需替换,已在上面代码和图中标注

2.安装Android Studio的插件


网络异常,图片无法展示
|


这里顺便把必备的Flutter安装,一般会默认让你确定是否安装Dart,我们选择一起安装


网络异常,图片无法展示
|


然后不急着重启AS,我们先在Settings里的搜索框搜索SDK,在SDK Tools里下载:


网络异常,图片无法展示
|


完成后重启AS

3.这时候可以在AS的Teminal控制台中直接flutter doctor


网络异常,图片无法展示
|


如果出现:

Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses

这表示有部分协议未同意,要确认,直接在控制台输入以下内容,然后一路选y即可:

flutter doctor --android-licenses

如果没安装CHrome和Visual Studio不影响使用Android端开发,如果需要Web和Windows软件开发,那需要下载VS的C++桌面开发套件:


网络异常,图片无法展示
|
网络异常,图片无法展示
|


完成了这些,最后就可以在AS中新建Flutter项目了:


网络异常,图片无法展示
|

网络异常,图片无法展示
|

网络异常,图片无法展示
|

总结

时间荏苒,我也开启了自己的Flutter之旅,不过之前一些文章的坑还没填完,估计还得填很久,不过凡事开头难,相信自己一定可以在这条路学下去的。

相关文章
|
6天前
|
Android开发 开发者 Kotlin
探索安卓开发中的新特性
【9月更文挑战第14天】本文将引导你深入理解安卓开发领域的一些最新特性,并为你提供实用的代码示例。无论你是初学者还是经验丰富的开发者,这篇文章都会给你带来新的启示和灵感。让我们一起探索吧!
|
2天前
|
Java Linux Android开发
深入理解Android开发:从基础到高级
【9月更文挑战第17天】本文将深入探讨Android开发的各个方面,包括应用开发、操作系统等。我们将通过代码示例来展示如何创建一个简单的Android应用,并解释其背后的原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和启示。
|
4天前
|
开发框架 Dart 前端开发
Android 跨平台方案对比之Flutter 和 React Native
本文对比了 Flutter 和 React Native 这两个跨平台移动应用开发框架。Flutter 使用 Dart 语言,提供接近原生的性能和丰富的组件库;React Native 则基于 JavaScript,具备庞大的社区支持和灵活性。两者各有优势,选择时需考虑团队技能和项目需求。
27 8
|
1天前
|
Oracle Java 关系型数据库
Mac电脑上安装和配置Flutter开发环境
Mac电脑上安装和配置Flutter开发环境
15 3
|
9天前
|
IDE 开发工具 Android开发
安卓与iOS开发对比:平台选择对项目成功的影响
【9月更文挑战第10天】在移动应用开发的世界中,选择正确的平台是至关重要的。本文将深入探讨安卓和iOS这两大主要移动操作系统的开发环境,通过比较它们的市场份额、开发工具、编程语言和用户群体等方面,为开发者提供一个清晰的指南。我们将分析这两个平台的优势和劣势,并讨论如何根据项目需求和目标受众来做出最佳选择。无论你是初学者还是有经验的开发者,这篇文章都将帮助你更好地理解每个平台的特性,并指导你做出明智的决策。
|
6天前
|
XML 编解码 Android开发
安卓开发中的自定义视图控件
【9月更文挑战第14天】在安卓开发中,自定义视图控件是一种高级技巧,它可以让开发者根据项目需求创建出独特的用户界面元素。本文将通过一个简单示例,引导你了解如何在安卓项目中实现自定义视图控件,包括创建自定义控件类、处理绘制逻辑以及响应用户交互。无论你是初学者还是有经验的开发者,这篇文章都会为你提供有价值的见解和技巧。
14 3
|
8天前
|
API Android开发 iOS开发
安卓与iOS开发中的线程管理对比
【9月更文挑战第12天】在移动应用的世界中,安卓和iOS平台各自拥有庞大的用户群体。开发者们在这两个平台上构建应用时,线程管理是他们必须面对的关键挑战之一。本文将深入探讨两大平台在线程管理方面的异同,通过直观的代码示例,揭示它们各自的设计理念和实现方式,帮助读者更好地理解如何在安卓与iOS开发中高效地处理多线程任务。
|
8天前
|
搜索推荐 Android开发 UED
安卓开发中的自定义视图:打造个性化用户界面
【9月更文挑战第11天】在安卓应用开发领域,自定义视图是实现独特用户体验的基石。本文将引导你通过一个简单的自定义视图示例,探索如何从零开始创建并应用自定义组件,以增强你的应用界面。我们将一起学习如何扩展View类,重写onDraw方法,处理触摸事件,并最终在我们的安卓项目中使用这个自定义视图。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供清晰的步骤和实用的技巧,帮助你提升用户界面设计的能力。
|
API 开发工具 Android开发
4.0、Android Studio配置你的构建
Android构建系统编译你的app资源和源码并且打包到APK中,你可以用来测试,部署,签名和发布。
1143 0
|
10天前
|
开发框架 Android开发 iOS开发
探索安卓与iOS开发的差异:构建未来应用的指南
在移动应用开发的广阔天地中,安卓与iOS两大平台各占半壁江山。本文将深入浅出地对比这两大操作系统的开发环境、工具和用户体验设计,揭示它们在编程语言、开发工具以及市场定位上的根本差异。我们将从开发者的视角出发,逐步剖析如何根据项目需求和目标受众选择适合的平台,同时探讨跨平台开发框架的利与弊,为那些立志于打造下一个热门应用的开发者提供一份实用的指南。
24 5