vscode+flutter+夜神模拟器(Windows篇)

4,770 阅读3分钟

前言

最近着手学习flutter,看了看网上的配置教程,很大部分是有vscode还要装Android Studio的,这对于大部分web前端同学来说Android Studio相对陌生,配置起来也不是很上手,so,下面就轮到我献献丑(装装逼),给大家说说如何不安装Android Studio的情况下让flutter运行起来。

一、 Flutter SDK

下载Flutter SDK 链接,解压到你要放置的目录,最好不要C盘下。然后打开系统环境变量,在Path中添加 flutter sdk 的bin路径,比如:D:XXX\flutter\bin
由于墙的原因,安装packages慢,需要配置两个用户环境变量
变量名PUB_HOSTED_URL,变量值https://pub.flutter-io.cn
变量名FLUTTER_STORAGE_BASE_URL,变量值https://storage.flutter-io.cn

配置完可以重启电脑,进入cmd 运行flutter doctor ,正常会提示缺少Android SDK 的问题,下面我们继续配置

二、 下载jdk,配置java环境

下载jdk8,并配置好系统环境变量,这部分网上有很多教程。 配置成功在cmd下运行java和javac 能正常就行

三、 配置Android SDK

前往Android SDK官网下载sdk-tools, 如果上不去,这个也行androiddevtools找到SDK Tools 下载
解压sdk-tools,这里文件夹我改名为android_sdk了,配置sdk环境
ANDROID_HOME:D:\android_sdk (就是你的sdk-tools的解压目录) PATH:%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

四、安装sdk packages

在下载包之前,在你的C盘用户找到.android文件夹,没有的话设置显示隐藏的文件夹。然后在.android新建repositories.cfg,若存在则不新建

进入cmd,cd到android sDK tools bin 下 执行sdkmanager --list查看packages,可以查看版本

我们可以通过sdkmanager --install "" 下载各种包,下面列举需要下载的包名,xxx代表版本号

需要下载的包名 说明
sdkmanager --install “build-tools;xx” 平台构建工具
sdkmanager --install “platforms;android-xx APIs 对应构建工具
sdkmanager --install “platform-tools” 平台工具集
sdkmanager --install “extras;google;m2repository” gradle相关
sdkmanager --install “extras;android;m2repository” gradle相关
sdkmanager --install “emulator 模拟器 (可选 如果你打算直连手机的话就不需要)
system-images;android-xx;google_apis_playstore;x86 如果你用模拟器就需要一个系统镜像

安装成功

五、vscode运行flutter

  1. vscode安装flutter查件
  2. 在终端中运行flutter doctor,查看输出是否有问题 flutter doctor 没响应的话,查看电脑进程是否有git进程,杀死后重新运行flutter doctor即可,以下是成功的截图
  3. 左下角的设置点击进入 “命令面板”,在命令面板中点击flutter:new project 项
  4. 打开你安装好的夜神模拟器,夜神运行起来后在cmd里面重连,比如:D:\Nox\bin\nox_adb.exe connect 127.0.0.1:62001,这里可以新建个bat文件,不用每次都要输入,点击bat文件就行
    这时在vscode右下角可以看到有模拟器啦。
  5. 运行flutter run,第一次会卡很久,需要梯子在jcenter和google库里下载依赖,但是又因为有厚厚的墙访问不到,需要配置 阿里云的镜像。
    在你flutter项目的app 里的build.gradle 加 阿里云的镜像
    在你flutter sdk 的 如下路径 下的 flutter.gradle 也同样添加镜像。 flutter\packages\flutter_tools\gradle\flutter.gradle 下的buildscript{repositoreis{注释掉google() jcenter()}}
    添加的内容:
maven{ url 'https://maven.aliyun.com/repository/google' }   
maven{ url 'https://maven.aliyun.com/repository/jcenter' }  
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public'}

  1. flutter doctor 提示Some Android licenses not accepted
    按照提示 flutter doctor --android-license就行,然后一直y下去

7.执行flutter run 可以看到项目运行起来了

总结

开发app的环境着实是复杂,没有web端直来直去的简单,说多都是泪