mac flutter 配置

下载Flutter Sdk

直接访问官网无法下载,需要访问中国镜像下载

Flutter SDK 归档列表 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

Start building Flutter Android apps on macOS - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

下载后解压放到一个文件夹 /Users/zhiyu/Documents/gitflutter/flutter3.19.1/

环境变量中要用到

配置 Android 开发

打开后现在不用设置代理了, 可以直接访问google上的资源

下载 Android Studio 和应用工具 - Android 开发者 | Android Developers

android studio 历史版本 https://www.androiddevtools.cn/android-studio.html

cd  ~

vim .bash_profile   

export PATH=/Users/zhiyu/Documents/gitflutter/flutter3.19.1/bin:$PATH
#使用 Flutter 镜像站点  https://flutter.cn/community/china?tab=macos
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
 

export ANDROID_HOME=/Users/zhiyu/Documents/android_sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

source .bash_profile   

flutter config --android-sdk /Users/zhiyu/Documents/android_sdk

flutter doctor --android-licenses  # 接受Android sdk的许可证

flutter --version  # 查看flutter版本信息

flutter doctor -v  # 检查flutter设置和环境变量的详细信息 

flutter devices  # 查看连接的Android设备或模拟器

flutter emulators  # 查看连接的Android模拟器

错误:

Flutter获取依赖报错Got TLS error trying to find package xxx

Flutter获取依赖报错Got TLS error trying to find package xxx-CSDN博客

在项目的命令窗口中,手动执行 flutter pub get 后再调试

问题:

1 mac 10.15上安装最新的android studio 后, 虚拟机跑不起来, 原因是 sdk_path/emulator 新版本不支持, 需要换成旧版本, 并且安装早期的 android studio

下载旧版本的模拟器(在我的例子中,我使用emulator-darwin_x64-7425822 从这里下载

https://dl.google.com/android/repository/emulator-darwin_x64-7425822.zip

替换为 sdk 文件夹中的 emulator文件夹

2 gradle 问题:Exception: Gradle task assembleDebug failed with exit code 1 出现这个问题,可能是依赖的插件无法下载

【国内镜像 Index of /gradle/

#查看java path

echo $JAVA_HOME

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=file:///Users/zhiyu/Documents/gitflutter/gradle-7.5-all.zip
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
​
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home

在 android studio 中测试:

1 New Flutter Project

报错,此时是因没有配置mac虚拟的原因,可以不用管, run doctor 后关闭,再打开刚刚创建的test6

[!] Android Studio (version unknown)
    • Android Studio at /Applications/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to determine Android Studio version.
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

在终端执行 flutter pub get

在最新版的 android studio 中选测试环境执行:

选虚拟机测试

flutter 运行android 报错 Could not resolve... download.flutter.io flutter 运行android 报错 Could not resolve... download.flutter.io-CSDN博客

maven { url "http://storage.googleapis.com/download.flutter.io" }

maven { url "http://download.flutter.io" }

用到上面两个的地方都   替换成下面的。可以直接输入下面的网址验证看看能不能请求。

maven { url 'https://storage.flutter-io.cn/download.flutter.io'   }

主要替换 项目目录 android/build.gradle中的,其中allprojects.repositories加入 maven

allprojects {
    repositories {
        google()
        mavenCentral()
        maven {
            //url "$storageUrl/${engineRealm}download.flutter.io"
            url 'https://storage.flutter-io.cn/download.flutter.io'
        }
    }
}

还有flutter sdk中 flutter\packages\flutter_tools\gradle目录下

flutter.gradle、aar_init_script.gradle、resolve_dependencies.gradle中修改后不生效, 似乎需要清理缓存

再次运行:

vscode 中安装 flutter

先安装flutter插件

1

2 按 cmd + Shift + P

  1. Select the Flutter: New Project.

  2. select Application.

解决方法:  (无用)

1、关闭vscode

2、打开flutter sdk按路径找到 bin/cache/lockfile

3、删除lockfile文件

把环境变量配置都放到 /etc/profile

在今年苹果公司发布了macOS Catalina(10.15),macOS的默认终端从bash变成了zsh 。

解决:

vim  ~/.zshrc

在 ~/.zshrc 文件最后,增加一行:

source /etc/profile

重启再次创建即可

flutter run 如要在虚拟机运行, 则先启动虚拟机

-------------其他-------------

清除Mac中Android studio的配置文件

1/执行这些命令在命令行

复制代码
rm -Rf /Applications/Android\ Studio.app  
rm -Rf ~/Library/Preferences/AndroidStudio*  
rm ~/Library/Preferences/com.google.android.studio.plist  
rm -Rf ~/Library/Application\ Support/AndroidStudio*  
rm -Rf ~/Library/Logs/AndroidStudio* 
rm -Rf ~/Library/Caches/AndroidStudio*
复制代码
2/如果你想删除全部项目  rm -Rf ~/AndroidStudioProjects
复制代码
3/删除gradle关联文件 (caches & wrapper) rm -Rf ~/.gradle
复制代码
4/删除模拟器 rm -Rf ~/.android
复制代码
5/删除android 工具  rm -Rf ~/Library/Android*

----vscode 一些插件----

flutter vscode环境搭建+vscode插件推荐 - 知乎

Bracket Pair Colorizer插件

给匹配的括号上色。此扩展已弃用,因为此功能现已内置于VS代码中。

Color Highlight插件

这个插件用于给代码中的颜色进行高亮展示。

wesome Flutter Snippets插件

Awesome Flutter Snippets是flutter开发最常用的扩展之一,可以更轻松地将 pub 添加到pubspec.yaml,它也可以用于更新现有的 pub。Awesome Flutter Snippets 集成了 Flutter 常用类和方法,通过分别输入快捷键 streamBldr 和 singleChildSV ,可以创建诸如 StreamBuilder 和 SingleChildScrollView 之类的小部件。 11.png

Image Preview插件

鼠标悬浮在超链接上会显示预览图片:

Error lens插件

错误高亮显示,错误提示在代码后面显示:


mac 安装与卸载gradle

方式 1, 使用 brew , brew 安装包的目录:/usr/local/Cellar

安装: brew install gradle

卸载: brew uninstall gradle (发现安装了最新的gradle之后,编译项目出错,于是想把gradle卸载了,安装一个旧版本的gradle)

检察gradle是否安装完成 gradle -v

rm -rf /usr/local/Cellar/gradle*
如果/usr/local/Cellar/etc 也有gradle 也通过rm -rf gradle*
然后就是mac 的home 目录下的.gradle 目录,它是一个隐藏目录通过ls -a 查看
rm -rf ~/.gradle 可删可不删除 

方式 2: 通过下载gradle压缩包,进行解压, 配置环境变量,这种方式安装的gradle

export GRADLE_HOME=/Users/xxx(你的解压路径)/gradle-5.0
export PATH=$PATH:$GRADLE_HOME/bin

卸载: 直接把加压包删除,然后将环境变量中配置的GRADLE_HOME也同样删除掉


android sdk 从高版本换到低版本

1 先删除之前的目录,重新安装 android studio , 重新创建/Documents/android_sdk

2


flutter 设置AndroidManifest.xml

在Flutter中,可以通过修改android/app/src/main/AndroidManifest.xml文件来配置Android应用的清单。

相关推荐
Java小白笔记1 小时前
Mac解决 zsh: command not found: ll
macos
小钱c72 小时前
Mac下安装Apache JMeter并启动
jmeter·macos·apache
problc6 小时前
Flutter中文字体设置指南:打造个性化的应用体验
android·javascript·flutter
SoraLuna12 小时前
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
macos·ui·harmonyos
追风林12 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
yqcoder12 小时前
mac 安装 nodemon
macos
一ge科研小菜鸡12 小时前
macOS开发环境配置与应用开发(详细讲解)
macos
hairenjing112312 小时前
使用 Mac 数据恢复从 iPhoto 图库中恢复照片
windows·stm32·嵌入式硬件·macos·word
lqj_本人14 小时前
鸿蒙next选择 Flutter 开发跨平台应用的原因
flutter·华为·harmonyos
lqj_本人17 小时前
Flutter&鸿蒙next 状态管理框架对比分析
flutter·华为·harmonyos