概述

编辑器使用 vscode,不再安装 Android Studio。

安装 Git

点击这里 下载并安装 Git

配置 Java 环境

下载和安装 JDK

点击下载 Java SE Development Kit 8

我的安装路径是 “D:\Programs\Java\jdk1.8.0_291”,你可以根据情况而定。

配置环境变量

搜索框中输入 “env” 打开 “编辑系统环境变量配置”

JAVA_HOME

  • 变量名:JAVA_HOME
  • 变量值:D:\Programs\Java\jdk1.8.0_291

CLASSPATH

  • 变量名:CLASSPATH
  • 变量值:.;% JAVA_HOME%\lib;% JAVA_HOME%\lib\tools.jar;

注意:变量值的开头有个英文点。结尾有个英文分号;

添加到系统变量

将刚刚新建的最后一项移动到顶部:

通过点击确定将所有窗口关闭

测试

打开 CMD 输入 “java -version”

输入 “javac”

配置 Android 环境

安装 Command line tools

下载和解压

下载 Command line tools

解压到 “D:\Protable\Android\sdk”

注意:“D:\Protable\Android\sdk” 是我的 Android SDK 存放的路径,可以根据你的情况更改到其他位置。但是,一般将 Android SDK 放到 “Android\sdk” 目录下。

把 D:\Protable\Android\Sdk\cmdline-tools\bin 加入到环境变量:

注意:“D:\Protable\Android\Sdk\cmdline-tools” 是我的 cmdline-tools 解压后存放的路径,应改成你的位置,不过一定将 bin 目录加入到环境变量。

command-tools

command-tools 包含以下几个 command-tool

apkanalyzer 是一个命令行工具, 可以在构建流程完成后立即了解 APK 的组成,并且可以比较两个 APK 之间的差异。使用 apkanalyzer 可以减少调试应用中的 DEX 文件和资源相关问题所花费的时间,并减小 APK 的大小。

avdmanager 是一个命令行工具,可以用于从命令行创建和管理 Android 虚拟设备 (AVD)。借助 AVD,您可以定义要在 Android 模拟器中模拟的 Android 手机、Wear OS 手表或 Android TV 设备的特性。

lint 是一个命令行工具,用于代码扫描,可以帮助您识别和纠正代码的结构质量问题。

retrace 是一个命令行工具,对于由 R8 编译的应用程序,用于从经过混淆处理的堆栈轨迹获取原始堆栈轨迹。系统会通过在映射文件中对类名和方法名与其原始定义进行匹配来重构堆栈轨迹。(对映射回原始源代码的模糊堆栈跟踪进行解码)

sdkmanager 是一个命令行工具,允许你查看、安装、更新和卸载 Android SDK 的软件包。我们不使用 Android Studio,所以可以使用这个命令行工具管理 SDK 包。

安装需要的 Android 环境

在 cmd 中输入如下命令,安装需要的 Android 环境

sdkmanager "platform-tools" "platforms;android-28" "build-tools;28.0.3"

将 platform-tools 加入系统环境变量

debug 工具 adb(Android Debug Bridge) 就在 platform-tools 目录下,下文使用的 adb xxx 命令正是来源于此。

使用代理

适用于所有命令,指示使用代理

sdkmanager --proxy=http --proxy_host=127.0.0.1 --proxy_port=1080

--proxy={http | socks} 通过给定类型的代理连接:HTTP 或 FTP 等高级协议的 http,或 SOCKS(V4 或 V5)代理的 socks。

也可以在用户目录下~/.android 创建 androidtool.cfg 文件:

http.proxyPort=1080
http.proxyHost=127.0.0.1

配置安卓环境变量

ANDROID_HOME

  • 变量名:ANDROID_HOME
  • 变量值:D:\Protable\Android

ANDROID_SDK_ROOT

  • 变量名:ANDROID_SDK_ROOT
  • 变量值:D:\Protable\Android\Sdk

注意:这里选择的是 Sdk 目录,和 ANDROID_HOME 的变量值不同

下载和安装 Flutter SDK

配置 Flutter 国内镜像

在任意位置右键 “Git bash here”

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

Flutter SDK

下载 Flutter SDK

点击这里 查看 Flutter SDK 列表,并下载

解压到 D:\Protable\flutter

注意:“D:\Protable\flutter 是我的 Flutter SDK 存放的路径,可以根据你的情况更改到其他位置。

配置 Flutter SDK 环境变量

打开 cmd 输入 “flutter” 检测环境变量:

接受许可协议

在 cmd 中输入如下命令,并在交互式 “对话” 中全部回复 “y”

flutter doctor --android-licenses

检测 flutter 开发环境

在 cmd 中输入如下命令:

flutter doctor

配置 VSCode

点击这里 下载并安装 VSCode

在插件中搜索 Flutter 并安装

创建 Flutter 项目

通过 ctrl + shift + p 打开命框,输入 “flutter” 并选择 “New Application Project”

输入项目名称按下回车即可创建项目

调试

使用浏览器调试

注意右下角状态栏,你也可以通过点击此处切换到 Edge Chromium

按下 f5 并选择 “Dart&Flutter”

稍等片刻即可自动打开 Chrome

使用真机调试

首先需要进入 “开发者选项” 将手机的 “允许 USB 调试” 打开,使用数据线连接电脑,同意 USB 调试。在 CMD 中输入如下命令,设置 wifi 连接的端口号为 5555

adb tcpip 5555

在 CMD 中输入如下命令,链接手机。你的手机的 IP 地址一般在 设置 > wifi > 高级设置 中查看。比如 IP 为:x.x.x.x

adb connected to x.x.x.x:5555

在启动应用之前,注意此时 VSCode 中右下角的状态栏中显示的应是通过 USB 链接的手机型号

按下 f5 并选择 “Dart&Flutter”。稍等片刻会在手机中弹出安装提示,同意即可。

使用模拟器调试

使用模拟器调试,Windows 需要打开 Hyper-V 服务,并在 BIOS (电脑主板设置)中启用 VT(虚拟化技术)。

** 安装 Intel HAXM**

Intel HAXM (Hardware Accelerated Execution Manager),即英特尔硬件加速执行管理器 (Intel HAXM) 是一款硬件辅助虚拟引擎 (管理程序) 使用基于 Intel (R) Virtualization Technology (VT) 的硬件加速, 因此需要 CPU 支持 VT , 而且仅限于 Intel CPU。Intel HAXM 与英特尔 Android x86 模拟器映像及官方 Android SDK 管理器结合使用,HAXM 可在支持英特尔虚拟化技术的系统上加快 Android 模拟器的速度。

sdkmanager "extras;intel;Hardware_Accelerated_Execution_Manager"

** 验证 Intel HAXM**

打开 CMD 输入如下命令验证 Intel HAXM

sc query intelhaxm

如果出现问题,比如 “The specified service does not exist as an installed service”,打开 “D:\Protable\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager” 目录,通过 silent_install.bat 进行安装

** 安装安卓系统镜像 **

sdkmanager --install "system-images;android-29;default;x86"

** 安装模拟器 **

sdkmanager "emulator"

将 emulator 添加到环境变量

** 创建一个安卓模拟器实例 **

创建一个名为 “test” 的模拟器实例,后续指令可能需要在 Android/emulator 目录下执行,或者将其加入环境变量

echo "no" | avdmanager --verbose create avd --force --name "test" --package "system-images;android-29;default;x86" --tag "default" --abi "x86"

** 启动安卓模拟器 **

emulator @test &

按下 f5 并选择 “Dart&Flutter”。稍等片刻会在模拟器中显示 Flutter 应用

使用第三方模拟器调试

以逍遥模拟器为例,并不需要再做什么配置,只需要打开模拟器,在 VSCode 右下角状态栏中显示如下设备

按下 f5 并选择 “Dart&Flutter”。稍等片刻会在模拟器中显示 Flutter 应用

也可以通过 adb 链接模拟器 IP 地址,比如:

  • 夜神模拟器 adb connect 127.0.0.1:62001
  • MuMu 模拟器 adb connect 127.0.0.1:7555

参考资料

使用 VSCode 搭建 Flutter环境的更多相关文章

  1. vscode搭建python环境

    这两天刚下了一个pycharm,结果使用之后将vscode给崩了,重装的时候有些步骤也记不清,走了一些弯路,做个总结来记录一下(本人觉得vscode比pycharm好用一点). Python下载安装 ...

  2. Node.js+Protractor+vscode搭建测试环境(1)

    1.protractor简介 官网地址:http://www.protractortest.org/ Protractor是一个end-to-end的测试框架,从网络上得到的答案是Protractor ...

  3. VScode搭建OpenCV环境

    用vscode来写opencv代码需要自己编译OpenCV,主要用到MinGW-w64和CMake工具.由于可能存在的版本兼容问题,下载这些工具前最好先访问网站: https://github.com ...

  4. vscode搭建c++环境

    第一步:下载 Vs Code 点击链接下载Vs Code 下载版本  并安装 https://code.visualstudio.com/ 点击 Download for Windwos 安装时  如 ...

  5. VSCode搭建golang环境

    安装对应版本的Golang 略 VSCode安装对应 Go 插件 在应用商店安装即可:go VSCode安装 Go 工具: 在VSCode输入:Crtl + Shift + P 在弹出框输入:inst ...

  6. Flutter环境搭建

    本文介绍mac上搭建Flutter环境 1.Flutter官方提供中国地区镜像地址:https://github.com/flutter/flutter/wiki/Using-Flutter-in-C ...

  7. VSCode搭建Java开发运行环境

    用了一段时间VSCode,觉得还可以,想用VSCode整合不同的开发语言,于是研究了一下利用VSCode搭建Java环境.开发Java程序.网上这方面的帖子有不少,但每人的经历不同,把自己的经历记下来 ...

  8. Mac最新Flutter环境搭建运行和对比理解声明式UI

    前言 这段时间一直都在学习和写关于SwiftUI的东西,前面也总结了四篇文章来大体上说了下Demo中功能实现的一些细节,后面准备开始了解学习一下Flutter,争取在年前能再用Flutter写一份项目 ...

  9. 浅谈Flutter(一):搭建Flutter开发环境

    学习内容来自: Flutter中文网  . Flutter实战 -------------------------------------------------------------------- ...

随机推荐

  1. 使用kubeadm部署一套高可用k8s集群

    使用kubeadm部署一套高可用k8s集群 有疑问的地方可以看官方文档 准备环境 我的机器如下, 系统为ubuntu20.04, kubernetes版本1.21.0 hostname IP 硬件配置 ...

  2. 分布式Jmeter压测机的部署

    部署 1.分布式配置 Master机Jmeter安装目录下/bin/jmeter.properties remote_hosts修改为slave压力机的IP 如 remote_hosts=10.0.4 ...

  3. list 分批导入db, 每1000条数据一批 , 从字符串中获取数字,小数, 版本号比较

    //这个有个弊端: 分组后分批导入, 是阻塞的,我没有导入完成,别人就不能导入, 这里可以优化成异步,线程池 public static void main(String[] args) { Rand ...

  4. springboot——重定向解决刷新浏览器造成表单重复提交的问题(超详细)

    原因:造成表单重复提交的原因是当我们刷新浏览器的时候,浏览器会发送上一次提交的请求.由于上一次提交的请求方式为post,刷新浏览器就会重新发送这个post请求,造成表单重复提交. 解决办法: 将请求当 ...

  5. P1522 [USACO2.4]牛的旅行 Cow Tours(Floyd)

    题目描述 Farmer John 的农场里有很多牧区.有的路径连接一些特定的牧区.一片所有连通的牧区称为一个牧场.但是就目前而言,你能看到至少有两个牧区通过任何路径都不连通.这样,Farmer Joh ...

  6. 轻松吃透实时时钟芯片DS1302软硬件设计,看完秒懂

    今天我们来讨论一款老掉牙的实时时钟芯片DS1302.什么是实时时钟(RealTime Clock, RTC)呢?为什么我们需要它呢?假设你使用单片机实现万年历应用,一般的做法是这样的:设置中断后判断1 ...

  7. python读取csv文件数据绘制图像,例子绘制天气每天最高最低气温气象图

  8. 3、搭建 rsync备份服务器

    yum install rsync -y rsync(873):数据同步,把一台服务器上的数据以何种权限同步到另一台服务器上,是linux 系统下的数据镜像备份工具.使用快速增量备份工具Remote ...

  9. 一小时搞懂Mysql锁机制

    内容概述: 我们知道,数据也是一种供许多用户共享访问的资源.如何保证数据并发访问的一致性.有效性,是所有数据库必须解决的一个问题,锁的冲突也是影响数据库并发访问性能的一个重要因素.从这一角度来说,锁对 ...

  10. 修改MySQL时区

    说明: 1.Windows版本暂无发现问题 2.CentOS-Docker版本需要修改时区 通过sql命令临时修改 mysql> set global time_zone = '+8:00'; ...