概述

编辑器使用 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. TVM中的调度原语

    TVM中的调度原语 TVM是一种用于高效内核构造的领域专用语言. 本文将展示如何通过TVM提供的各种原语来调度计算. from __future__ import absolute_import, p ...

  2. CountDownLatch原理详解

    介绍 当你看到这篇文章的时候需要先了解AQS的原理,因为本文不涉及到AQS内部原理的讲解. CountDownLatch是一种同步辅助,让我们多个线程执行任务时,需要等待线程执行完成后,才能执行下面的 ...

  3. python_selenium_PO模式下显示等待、隐式等待封装,结合Excel读取元素可取默认等待时间配置

    basepage中等待的封装 def implicitly_wait(self): self.driver.implicitly_wait(5)def wait(self): time.sleep(5 ...

  4. NOIP2018初赛普及组原题&题解

    NOIP2018初赛普及组原题&题解 目录 NOIP2018初赛普及组原题&题解 原题&答案 题解 单项选择题 第$1$题 第$2$题 第$3$题 第$4$题 第$5$题 第$ ...

  5. 你应该这样去开发接口:Java多线程并行计算

    所谓的高并发除了在架构上的高屋建瓴,还得需要开发人员在具体业务开发中注重自己的每一行代码.每一个细节,面子有的同时,更重要的还是要有里子. 面对性能,我们一定要有自己的工匠精神,不可以对任何一行代码妥 ...

  6. 聊一聊 Spring Boot 中 RESTful 接口设计规范

    在设计接口时,有很多因素要考虑,如接口的业务定位,接口的安全性,接口的可扩展性.接口的稳定性.接口的跨域性.接口的协议规则.接口的路径规则.接口单一原则.接口过滤和接口组合等诸多因素,本篇文章将简要分 ...

  7. VBS脚本编程(10)——编写WMI脚本

    WMI介绍 1.WMI是什么? WMI--Windows管理规范(Windows Management instrumentation). 是一项核心的Windows管理技术. 采用统一的.基于开放标 ...

  8. python 字典和列表嵌套用法

    python中字典和列表的使用,在数据处理中应该是最常用的,这两个熟练后基本可以应付大部分场景了.不过网上的基础教程只告诉你列表.字典是什么,如何使用,很少做组合说明. 刚好工作中采集promethe ...

  9. npm ERR! Unexpected end of JSON input while parsing near '...'解决方法

    npm install时出现npm err! Unexpected end of JSON input while parsing near'...'错误 输入  npm cache clean -- ...

  10. vue项目中一些标签直接放在<template>下会报错Failed to compile with 1 errors

    原因是a标签button以及element-ui的组件不能直接放在<template>下,需要先有一个div,其他标签要放在div下