MacOS 系统 Flutter开发Android 环境配置

上节我们已经把 开发工具准备齐全,并可以进行Flutter的web开发,本节将做安卓开发环境进行详细说明

  • 接上节这里先说下,系统环境  MacOS14 (Sonoma) 芯片 Apple M3

执行命令:flutter doctor  提示如下:

[!] Flutter (Channel stable, 3.13.9, on macOS 14.1.1 23B2082 darwin-arm64, locale en-CN)✗ Downloaded executables cannot execute on host.See https://github.com/flutter/flutter/issues/6207 for more information.Flutter requires the Rosetta translation environment on ARM Macs. Try running:sudo softwareupdate --install-rosetta --agree-to-license
[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)✗ cmdline-tools component is missingRun `path/to/sdkmanager --install "cmdline-tools;latest"`See https://developer.android.com/studio/command-line for more details.✗ Android license status unknown.Run `flutter doctor --android-licenses` to accept the SDK licenses.See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[!] Xcode - develop for iOS and macOS (Xcode 15.0.1)✗ CocoaPods not installed.CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to yourplugin usage on the Dart side.Without CocoaPods, plugins will not work on iOS or macOS.For more info, see https://flutter.dev/platform-pluginsTo install see https://guides.cocoapods.org/using/getting-started.html#installation forinstructions.

这里需要说明的是 此时还与开发配置无关,仅仅是检查开发工具是否符合要求;下面就提示做详细说明:

1、Downloaded executables cannot execute on host.

上节我们说了 用 usrname -a 查看 芯片型号以便下载对应的 flutter SDK,此处提示 SDK要在 ARM 架构芯片上运行 需要执行命令: sudo softwareupdate --install-rosetta --agree-to-license,按照提示输入命令即可,所以输入

sudo softwareupdate --install-rosetta --agree-to-license

解决第一个问题,接着提示  

2、✗ cmdline-tools component is missing  ✗ Android license status unknown. 对于第一个可能有些莫名其妙,提示是  Run `path/to/sdkmanager --install "cmdline-tools;latest"` 难道是执行命令 ?

非也!即便你命令行到 Android SDK目录 去执行那个提示命令也会提示错误,正确方式打开 上节我们安装好的 Android Studio,下载安装 cmdline-tools;  具体先看图

打开 Android Studio ,找到“设置”选项,按图所示 找到 Android SDK 选择,然后在右边的选项卡中选中

Android SDK Command-line Tools (latest)

⚠️勾选第三项 ,当然 Flutter开发 移动端 大部分时间也会用到 NDK,你也可以一次安装好,不过这不是必须根据项目需要选择安装;这是一个漫长的下载安装过程,取决于你的网络状况;

Command-line Tools 下载安装完成后,执行命令

#Command-line Tools 安装成功后 执行命令
flutter doctor --android-licenses

一系列的同意条款🙆,按提示操作即可!✅完成以上操作后

再次执行 flutter doctor 结果如下:

 MacOS 下 flutter 开发环境 Android安卓部分基本配置完毕,进入项目命令行 flutter build apk 试试

joson@MacBook ios % flutter build apk
Changing current working directory to: /Users/joson/Joson/Running Gradle task 'assembleRelease'...  #这里仅测试安装环境 是否正确 ,如果不报错即可;结果事与愿违,以下是网络问题@! 我想在天朝也许最为常见的问题了吧,相信你看到这应该知道怎么解决了吧@ 科学上网或者更改拉去镜像库,不懂的自行百度
Exception in thread "main" java.net.ConnectException: Operation timed outat java.base/sun.nio.ch.Net.connect0(Native Method)at java.base/sun.nio.ch.Net.connect(Unknown Source)at java.base/sun.nio.ch.Net.connect(Unknown Source)at java.base/sun.nio.ch.NioSocketImpl.connect(Unknown Source)at java.base/java.net.SocksSocketImpl.connect(Unknown Source)at java.base/java.net.Socket.connect(Unknown Source)at java.base/sun.security.ssl.SSLSocketImpl.connect(Unknown Source)at java.base/sun.security.ssl.BaseSSLSocketImpl.connect(Unknown Source)at java.base/sun.net.NetworkClient.doConnect(Unknown Source)at java.base/sun.net.www.http.HttpClient.openServer(Unknown Source)at java.base/sun.net.www.http.HttpClient.openServer(Unknown Source)at java.base/sun.net.www.protocol.https.HttpsClient.<init>(Unknown Source)at java.base/sun.net.www.protocol.https.HttpsClient.New(Unknown Source)at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(Unknown Source)at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source)at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)at java.base/sun.net.www.protocol.http.HttpURLConnection.followRedirect0(Unknown Source)at java.base/sun.net.www.protocol.http.HttpURLConnection.followRedirect(Unknown Source)at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)at org.gradle.wrapper.Download.downloadInternal(Download.java:58)at org.gradle.wrapper.Download.download(Download.java:44)at org.gradle.wrapper.Install$1.call(Install.java:61)at org.gradle.wrapper.Install$1.call(Install.java:48)at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)at org.gradle.wrapper.Install.createDist(Install.java:48)at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
Running Gradle task 'assembleRelease'...                          187.5s
Gradle task assembleRelease failed with exit code 1

打开Android Studio 错误提示一样 

由于喜欢用VsCode 作为编辑器,然后命令行方式调试和编译 ,所以很少直接用的 Android Studio,问题很明显了是网络问题,同时打开 Android Studio 一样提示无法下载文件;

百度 关键词 Maven Gradle,解决吧,具体可以参考 这篇文章​​​​​​​

下一节:MacOS 14 系统 XCode15、 Flutter 开发 IOS​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/175696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

好用的样式动画库集合(css、js)

文章目录 前言一、Animate.css二、Anime.js三、CSShake四、Hover.css五、AniJS六、Animista七、Tachyons-animate八、Sequence.js九、Infinite十、OBNOXIOUS.CSS十一、MOTION UI十二、Keyframes.app十三、AnimXYZ十四、Whirl十五、Hamburgers十六、Vivify十七、Magic Animation…

ESP32-Web-Server编程- JS 基础 3

ESP32-Web-Server编程- JS 基础 3 概述 本示例演示通过 button 控件的 onclick 内联属性&#xff0c;实现在网页上点击按钮&#xff0c;切换 LED 灯图标的转变。 示例解析 前端设计 前端代码建立了一个 id 为 “imageLamp” 的图片对象。并建立两个按钮&#xff0c;设计两…

Linux系统安装Docker-根据官方教程教程(以Ubuntu为例)

Linux系统安装Docker-根据官方教程教程&#xff08;以Ubuntu为例&#xff09; 1. 背景介绍2. 环境配置2.1 软件环境要求2.2 软件下载2.3 文档地址2.3 必备命令工具下载 3. 安装Docker3.1 使用root用户操作后续命令3.2 卸载可能存在的旧版本 4. 安装Docker4.1 更新依赖包4.4 配置…

lack——主页前后端开发优化(精华:java多线程实现数据插入)

lack——主页前后端开发优化 前端开发主页 最容易的方式&#xff1a;list列表<template><van-cardv-for"user in props.userList":desc"user.profile":title"${user.username} (${user.planetCode})":thumb"user.avatarUrl"…

SAP Smartforms自定义纸张格式

在写SMARTFORM或SAPScript的时候首先要定义纸张格式&#xff0c;如DIN4 A4, DIN5等&#xff0c;但当系统标准的纸张格式并不符合特定的纸张&#xff0c;就需要自定义一种纸张格式了。 总共三个步骤&#xff1a; 定义页格式(横打/竖打&#xff0c; 宽x高)定义格式类型(用于ABA…

PCB板的固螺丝孔连接电阻电容有什么好处

PCB板的固螺丝孔连接电阻电容有什么好处 并联高压电容和大电阻作用好处个人经历看法 并联高压电容和大电阻 我们经常会看到一些系统设计中将PCB板的地(GND)与金属外壳(EGND)之间通常使用一个高压电容C1&#xff08;1~100nF/2KV&#xff09;并联一个大电阻R1&#xff08;1M&…

企业网络中的身份安全

随着近年来数字化转型的快速发展&#xff0c;企业使用的数字身份数量急剧增长。身份不再仅仅局限于用户。它们现在扩展到设备、应用程序、机器人、第三方供应商和组织中员工以外的其他实体。即使在用户之间&#xff0c;也存在不同类型的身份&#xff0c;例如属于IT管理员、远程…

IDEA编译器技巧-提示词忽略大小写

IDEA编译器技巧-提示词忽略大小写 写代码时,每次创建对象都要按住 Shift 字母 做大写开头, 废手, 下面通过编译器配置解放Shift 键 setting -> Editor -> General -> Code Completion -> Match case 把这个√去掉, 创建对象就不需要再按住 Shift 键 示例: 1.…

LeetCode Hot100 124.二叉树中的最大路径和

题目&#xff1a; 二叉树中的 路径 被定义为一条节点序列&#xff0c;序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点&#xff0c;且不一定经过根节点。 路径和 是路径中各节点值的总和。 给你一个二叉树的根节点…

【密码学】【多方安全计算】不经意传输(Oblivious Transfer,OT)

文章目录 不经意传输&#xff08;oblivious transfer&#xff09;定义不经意传输的实例&#xff08;1 out 2&#xff0c;二选一不经意传输&#xff09;基于RSA的1 out 2 不经意传输疑问 不经意传输&#xff08;oblivious transfer&#xff09;定义 不经意传输&#xff08;obli…

从零开始学Go web——第一天

文章目录 从零开始学Go web——第一天一、Go与web应用简介1.1 Go的可扩展性1.2 Go的模块化1.3 Go的可维护1.4 Go的高性能 二、web应用2.1 工作原理2.2 各个组成部分2.2.1 处理器2.2.2 模板引擎 三、HTTP简介四、HTTP请求4.1 请求的文本数据4.2 请求方法4.2.1 请求方法类型4.2.2…

达索系统3DEXPERIENCE WORKS 2024电磁仿真功能

在设计工作中&#xff0c;将复杂的模型进行网格分割是必不可少的一步&#xff0c;这样可以化繁而简&#xff0c;也可以让后续的工作更容易开展。 电磁仿真可帮助您在复杂、嘈杂的电磁环境中提高效率&#xff0c;在确保兼容性的同时&#xff0c;保障出众性能。 一系列专用求解器…

windows中打开psql命令行

一、第一种方式 1.点击下方的psql&#xff0c;打开命令行窗口 2.中括号中的是默认值&#xff0c;直接回车就行 3.成功 二、第二种方式 双击安装目录中的执行文件 “D:\soft\postgresql\catalogue\scripts\runpsql.bat” 三、第三种方式 1.加到环境变量 把“D:\soft\postg…

婴儿专用洗衣机哪个牌子比较好?好用迷你洗衣机品牌推荐

当婴儿的到来&#xff0c;确实会给家庭带来许多变化&#xff0c;就好比如对于宝宝相关衣物的清洗需求。对于新生儿及婴幼儿的衣服&#xff0c;一般都要给予特殊的照顾与清洗&#xff0c;以保证不含细菌及过敏原。尤其是刚刚出生的婴儿&#xff0c;这时候宝宝们的皮肤很是幼嫩。…

百度网盘PC端程序二维码刷新不出来

问题 百度网盘PC端程序二维码刷新不出来。 原因 下载的百度网盘PC端程序版本有问题。 解决办法 删除百度网盘PC端程序&#xff0c;从官网下载&#xff0c;选择“从microsoft获取”&#xff0c;安装后解决。

快速开发表单好用吗?优势在哪?

如果应用快速开发表单&#xff0c;对提升企业的办公效率帮助巨大。在快节奏的现代社会生活中&#xff0c;职场办公也需要采用更专业的办公软件实现高效率提升。低代码技术平台就是如今常用于职场办公中的优质平台&#xff0c;其可视化操作、简单灵活、组件丰富等优势特点&#…

【精选】SpringDI依赖注入及注解实现SpringIoC

SpringDI 什么是依赖注入 依赖注入&#xff08;Dependency Injection&#xff0c;简称DI&#xff09;&#xff0c;它是Spring控制反转思想的具体实现。 控制反转将对象的创建交给了Spring&#xff0c;但是对象中可能会依赖其他对象。比如service类中要有dao类的属性&#xff0…

VBA高级应用30例:Ribbon(功能区)的介绍

《VBA高级应用30例》&#xff08;版权10178985&#xff09;&#xff0c;是我推出的第十套教程&#xff0c;教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开&#xff0c;这套教程案例与理论结合&#xff0c;紧贴“实战”&#xff0c;并做“战术总结”&#xff0c;以…

Nginx性能调优策略

Nginx是一个高性能的Web服务器和反向代理服务器&#xff0c;常用于处理高并发的请求。以下是一些常见的Nginx性能调优策略&#xff1a; 一、调整worker_processes和worker_connections 在Nginx配置文件中&#xff0c;可以通过worker_processes和worker_connections参数来调整w…

JAVA将PDF转图片

前言 当今时代&#xff0c;PDF 文件已经成为了常用的文档格式。然而&#xff0c;在某些情况下&#xff0c;我们可能需要将 PDF 文件转换为图片格式&#xff0c;以便更方便地分享和使用。这时&#xff0c;我们可以使用 Java 编程语言来实现这个功能。Java 提供了许多库和工具&a…