Mac OS 配置 Flutter 开发环境

简介: 手把手教你如何在 Mac OS 下配置 Flutter 开发环境。
本篇主要讲述安卓环境的配置,iOS 的开发环境很简单,只需要安装好 Xcode 就可以搞定了。

开发工具准备

下载Andriod Studio开发工具,以及Android SDK(官网打不开,可以百度搜索)。
在安卓SDK目录下,输入./android sdk启动Android SDK Manager配置东软信息学院国内镜像,方便下载最新的SDK包。
配置步骤:

  1. 启动 Android SDK Manager ,打开主界面,依次选择「Tools」、「Options...」,弹出『Android SDK Manager - Settings』窗口;
  2. 在『Android SDK Manager - Settings』窗口中,在「HTTP Proxy Server」和「HTTP Proxy Port」输入框内填入mirrors.neusoft.edu.cn和80,并且选中「Force https://... sources to be fetched using http://...」复选框。设置完成后单击「Close」按钮关闭『Android SDK Manager - Settings』窗口返回到主界面;
  3. 依次选择「Packages」、「Reload」。

下载Flutter SDK

访问Flutter官网下载最新稳定版Flutter SDK,链接为:https://flutter.dev/docs/get-started/install。Flutter中文社区的网址为:https://flutter.cn/

环境变量设置

考虑国内的网络环境,需要配置国内镜像,设置环境变量,在~/目录下编辑.bash_profile(如果使用zsh终端,则编辑.zshrc),编辑完后记得source ~/.bash_profile或source ~/.zshrc,使环境变量生效。

export ANDROID_HOME=/Users/lag/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export PATH=/Volumes/ServerDevelop/flutter/bin:${PATH}

其中~/Library/Android/sdk为安卓SDK路径,/Volumes/ServerDevelop/flutter/bin为flutter的bin路径。注意Android SDK目录务必安装到/Users/lag/Library/Android/sdk目录,其中lag为当前登录用户名。
配置完之后在终端输入命令:

adb version

出现如下信息即表示成功。

Android Debug Bridge version 1.0.41
Version 29.0.6-6198805

ADB调试
华为手机需要额外配置,手机设置->系统->关于手机->版本号(连点7下开启开发者模式),修改手机本身的USB设置,打开拨号界面,输入*#*#2846579#*#*,自动进入工程菜单,选择后台设置——>usb端口设置——>Google模式。

adb kill-server
adb start-server
adb devices

最后一个命令会显示设备列表,如下所示,表示未授权开发。

BGR6R20109000835    unauthorized

授权后显示如下

BGR6R20109000835    device

Flutter插件安装

在Android Studio的Preferences的plugins中安装Flutter插件,安装的时候会自动安装Dart环境。安装完成后会出现“Start a new flutter project”选项。实际发现使用Android Studio创建Flutter项目比较慢,可以到工程目录使用如下命令,其中app项目名使用小写字母,多个单词以横线分隔:

flutter create {app项目名}

image.png

解决flutter依赖获取慢的问题

打开Flutter SDK:flutter\packages\flutter_tools\gradle\flutter.gradle
改为:

repositories {
       // 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'}
    }

Flutter报错之Waiting for another flutter command to release the startup lock解决方案

  1. 关闭Android Studio
  2. 打开flutter安装目录/bin/cache
  3. 删除lockfile文件
  4. 此时可在命令行再执行flutter相关命令,完美解决

检查安装项

执行下面命令检查安装项,若有问题(打叉),按提示修复即可。

flutter doctor

Flutter中文社区指引

Flutter中文文档

Package获取与管理

官方package网址(需要科学上网)为https://pub.dartlang.org,国内镜像为:https://pub.flutter-io.cn/。可以在该网址找到对应的第三方package,package统一通过项目的pubspec.yaml文件管理。例如,添加url_launcher(一款跳转到系统浏览器的组件),可以如下配置:

version: 1.0.0+1

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  url_launcher: ^5.4.2

  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^0.1.2

dev_dependencies:
  flutter_test:
    sdk: flutter

获取package推荐在项目目录下使用命令行获取(Android Studio中很慢,可能是没有指定仓库的原因)。

flutter pub get

安卓模拟器无法打开解决

emulator: ERROR: Running multiple emulators with the 
same AVD is an experimental feature. Please use

在AVD Manager里,打开模拟器所在的目录,进入终端删除所有的.lock文件,我的目录是:

/Users/lag/.android/avd/Pixel_2_API_29.avd

image.png

rm -f *.lock

更新到 Flutter 2.0

近期 Google 发布了Flutter 2.0稳定版,下载更新了一下,快捷操作方法如下:
官方下载稳定版,参考官方链接:Flutter Mac 配置,下载稳定版 SDK。下载完成后解压,然后更改上述配置环境变量的 Flutter 目录,使用 zsh 的话需要编辑.zshrc 文件,使用系统的终端.bash_profile,修改 Flutter 的指向,然后再执行

source .zshrc

成功后,运行 flutter doctor 命令会给出结果:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.0.6, on Mac OS X 10.15.4 19E287 darwin-x64,
    locale zh-Hans-CN)
[✓] Android toolchain - develop for Android devices (Android SDK version
    30.0.0-rc2)
[!] Xcode - develop for iOS and macOS
    ! Xcode 11.4.1 out of date (12.0.1 is recommended).
      Download the latest version or update via the Mac App Store.
    ! CocoaPods 1.9.1 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.
[✓] Chrome - develop for the web
[✓] Android Studio (version 3.6)
[✓] IntelliJ IDEA Ultimate Edition (version 2020.1)
[✓] VS Code (version 1.56.0)
[✓] Connected device (1 available)

提示需要更新Xcode 和 CocoaPods 版本,根据自己需要是否更新,不更新也没太大影响。

同时切换不同的 SDK 版本

对于有时候需要在开发环境尝鲜,在生产环境使用稳定版,此时可以在 vscode 的 settings.json 中指定当前工程使用的 flutter版本,如下所示:

 //...
 "dart.flutterSdkPath": "/Volumes/ServerDevelop/flutter_v2",
 //...

/Volumes/ServerDevelop/flutter_v2是解压后的 flutter SDK 的目录所在位置。

相关文章
|
3天前
|
监控 网络虚拟化
配置远程MAC镜像示例
配置远程MAC镜像示例
|
3天前
|
监控 网络虚拟化
配置本地MAC镜像示例
1. 创建VLAN10,将Switch与主机相连的接口加入VLAN10,实现主机与Switch间的二层互通。 2. 配置接口GE0/0/4为本地观察端口,负责向Server转发镜像报文。 3. 在VLAN10内配置MAC镜像,将VLAN10内指定MAC地址的主机访问Internet的流量复制一份到本地观察端口。
|
3天前
|
Dart 前端开发 开发工具
【Flutter前端技术开发专栏】Flutter入门指南:搭建开发环境与第一个应用
【4月更文挑战第30天】本文介绍了Flutter SDK的安装和配置过程,以及如何创建并运行第一个Flutter应用。首先确保安装了Dart SDK和Flutter SDK,支持macOS、Linux和Windows。安装完成后,设置环境变量,然后通过`flutter doctor`验证安装。接着,使用`flutter create`命令创建新项目,进入项目目录并运行`flutter run`启动应用。在`main.dart`中修改代码以自定义应用。Flutter支持热重载和DevTools调试。本文为Flutter初学者提供了快速入门的指导。
【Flutter前端技术开发专栏】Flutter入门指南:搭建开发环境与第一个应用
|
3天前
|
JavaScript 小程序 前端开发
【Vue篇】mac上Vue 开发环境搭建、运行Vue项目(保姆级)
【Vue篇】mac上Vue 开发环境搭建、运行Vue项目(保姆级)
14 2
|
3天前
|
存储 Ubuntu Linux
手写操作系统(3)——开发环境建立与内核架构设计
手写操作系统(3)——开发环境建立与内核架构设计
9 3
|
3天前
|
Unix Shell Linux
史上最全:MAC OS X 命令行汇总
史上最全:MAC OS X 命令行汇总
12 0
|
3天前
|
安全 Java iOS开发
MAC OS X 硬盘安装详细分解教程
MAC OS X 硬盘安装详细分解教程
13 1
|
3天前
|
IDE 5G 开发工具
HP4230s笔记本安装mac os总结(原创)
HP4230s笔记本安装mac os总结(原创)
|
3天前
|
编解码 Oracle iOS开发
VirtualBox虚拟机安装Mac OS X Lion系统详解
VirtualBox虚拟机安装Mac OS X Lion系统详解
17 1
|
3天前
|
缓存 网络协议 安全
【软件设计师备考 专题 】操作系统的配置
【软件设计师备考 专题 】操作系统的配置
50 1