当前位置: 首页 > news >正文

Flutter环境搭建【win10虚拟机】+夜神模拟器【主机】

Flutter环境搭建

  • 0 Android Studio 与 VS Code 资源消耗对比
  • 1 系统配置要求
  • 2 Flutter SDK
    • 2.1 获取 Flutter SDK
    • 2.2 解压
    • 2.3 更新 path 环境变量
    • Dart SDK 要兼容 Flutter SDK
    • 双击 flutter_console.bat 输入 flutter doctor 检测环境
  • 3 VS code 与插件
    • 3.1 安装 VS code
    • 3.2 安装 flutter 插件
    • 3.3 查看 flutter 项目
  • 4 Java 环境
    • 4.1 JDK 版本
    • 4.2 下载
      • JDK21 【放弃,Android SDK Tools r24.4.1 不兼容该版本?】
      • JDK17
    • 4.3 安装 & 环境配置
    • 4.4 查看版本
    • 4.5 测试
  • 5 Android 环境 SDK 【体积大】【如下尝试都失败,借用Android Studio来安装】
    • 5.1 exe安装失败,放弃 【JDK21】
    • 5.1 exe安装成功 【JDK17】
      • 选项
      • 安装
        • 如下报错,处理:【放弃】
        • 也失败
        • 离线安装【暂不安装】
        • 根据提供的路径下载安装包到本地
        • Google SDK 分析
    • 5.2 解压安装,半成功 【JDK21】【放弃】
      • 下载失败
  • 6 安装 Android Studio
    • 6.1 下载地址
    • 6.2 Android Studio 中 Android SDK 下载如下4个 SDK Tools
    • 6.3 为 flutter 配置 Android SDK 目录 【flutter doctor】
    • 6.4 Android 许可证状态
    • 配置成功如下
    • 几个常见问题
  • 7 下载模拟器 并 配置 [主机中安装,虚拟机中安装太卡]
    • 7.1 模拟器对比
    • 7.2 模拟器下载安装
    • 7.3 配置模拟器 【同一系统内】
    • 7.3 配置模拟器 【虚拟机 + 主机】
      • 网络设置介绍
      • 网络设置
      • w10 虚拟机默认自动获取IP
        • 注意:关闭 win10 虚拟机中的防火墙
      • VMware虚拟机上通过adb连接物理机上的Android模拟器 【端口转发】
  • 8 示例
    • 8.1 创建 Demo 工程
    • 8.2 启动模拟器
    • 8.3 运行 flutter 项目
    • 8.4 debug版本 在夜神模拟器中运行
    • 8.5 release版本 在手机中运行【Android】
  • 其他
    • flutter 手机架构问题
    • flutter 安装包体积过大,包体积优化策略
  • 参考

0 Android Studio 与 VS Code 资源消耗对比

在这里插入图片描述
在这里插入图片描述

1 系统配置要求

为了安装和运行 Flutter,你的开发环境必须至少满足以下要求:

  • 操作系统:Windows 10 或更高的版本(基于 x86-64 的 64 位操作系统)。
  • 磁盘空间:除安装 IDE 和一些工具之外还应有至少 2.5 GB 的空间。
  • 工具:要让 Flutter 在你的开发环境中正常使用,依赖于以下的工具:
    • Windows PowerShell 5.0 或者更高的版本(Windows 10 中已预装)
    • Git for Windows 2.x,并且勾选从 Windows 命令提示符使用 Git 选项。
      如果 Windows 版的 Git 已经安装过了,那么请确保能从命令提示符或者 PowerShell 中直接执行 git 命令。

2 Flutter SDK

2.1 获取 Flutter SDK

https://flutter.cn/docs/release/archive?tab=windows

选择 flutter_windows 3.16.8-stable.zip

2.2 解压

将压缩包解压,然后把其中的 flutter 目录整个放在你想放置 Flutter SDK 的路径中。

2.3 更新 path 环境变量

在开始菜单的搜索功能键入「env」,然后选择 编辑系统环境变量。
在这里插入图片描述

Dart SDK 要兼容 Flutter SDK

Flutter SDK 在 flutter 命令脚本的同级目录下增加了 dart 命令,你可以更方便地运行 Dart 命令行程序。下载 Flutter SDK 时也会下载对应版本的 Dart SDK,但如果你单独下载了 Dart SDK,请确保 Flutter SDK 内的 dart 在你的环境变量中排在首位,因为单独的 SDK 可能并不兼容 Flutter SDK。下面的命令展示了 flutter 和 dart 是否来自相同的 bin 目录,并且是否可以兼容使用。

where flutter dart

在这里插入图片描述

双击 flutter_console.bat 输入 flutter doctor 检测环境

在这里插入图片描述
在这里插入图片描述

3 VS code 与插件

3.1 安装 VS code

3.2 安装 flutter 插件

在这里插入图片描述
flutter插件安装成功后应该会自动安装dart插件
在这里插入图片描述

3.3 查看 flutter 项目

快捷菜单查看 flutter 项目
在这里插入图片描述

4 Java 环境

Flutter开发需要有Java的支持。

4.1 JDK 版本

  • JDK 1.0(1996年1月23日发布)
  • JDK 1.1(1997年2月19日发布)
  • JDK 1.2(1998年12月8日发布)
  • JDK 1.3(2000年5月8日发布)
  • JDK 1.4(2002年2月6日发布)
  • JDK 5.0(2004年9月30日发布)
  • JDK 6(2006年12月11日发布)
  • JDK 7(2011年7月28日发布)
  • JDK 8(2014年3月18日发布)
  • JDK 9(2017年9月21日发布)
  • JDK 10(2018年3月20日发布)
  • JDK 11(2018年9月25日发布)
  • JDK 12(2019年3月19日发布)
  • JDK 13(2019年9月17日发布)
  • JDK 14(2020年3月17日发布)
  • JDK 15(2020年9月15日发布)
  • JDK 16(2021年3月16日发布)
  • JDK 17(2021年9月发布)
  • JDK 18(2022年3月发布)
  • JDK 19(2022年9月发布)
  • JDK 20(2023年3月发布)
  • JDK 21(2023年9月发布)

4.2 下载

https://www.oracle.com/java/technologies/downloads/#jdk21-windows

JDK21 【放弃,Android SDK Tools r24.4.1 不兼容该版本?】

在这里插入图片描述

JDK17

在这里插入图片描述

4.3 安装 & 环境配置

JDK21下载+安装+环境配置教程(Windows系统)

4.4 查看版本

java -version
在这里插入图片描述
在这里插入图片描述

4.5 测试

welcome.java

public class Welcome {public static void main(String[] args) {System.out.println("Hello world!");}
}

java welcome.java
在这里插入图片描述

5 Android 环境 SDK 【体积大】【如下尝试都失败,借用Android Studio来安装】

5.1 exe安装失败,放弃 【JDK21】

https://www.androiddevtools.cn/
在这里插入图片描述
在这里插入图片描述

5.1 exe安装成功 【JDK17】

在这里插入图片描述

选项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装

在这里插入图片描述

如下报错,处理:【放弃】

Downloading Google Play lntel x86 Atom 64 System lmage, Android API R, revision 2Download finished with wrong size. Expected 1313831742 bytes, got 1313824374 bytes.
(1) 相应压缩包已经下载到本地,找到压缩包
(2) Android\android-sdk\temp
在这里插入图片描述
(3) 解压到当前目录

也失败

在这里插入图片描述

离线安装【暂不安装】

Android System Image - Google API PlayStores Intel Atom x86 System Images Direct Download

根据提供的路径下载安装包到本地
Google SDK 分析

Google API intel x86 atom and Google Play intel x86 atom sytem image

Google API Intel x86 Atom System Image 是用于开发和测试的,它包含了 Android 操作系统的核心功能和 API,但不包含 Google Play 商店或专有应用程序。这意味着使用这个系统映像,你可以在模拟器上运行和测试自己的应用程序,但无法直接访问 Google Play 商店来安装其他应用程序。

而 Google Play Intel x86 Atom System Image 则包含了 Google Play 商店和专有应用程序,这使得你可以在模拟器上模拟完整的 Android 设备体验,包括访问 Google Play 商店和应用商店。但是,这个系统映像的使用有一些限制,例如没有 root 访问权限,并且主要用于生产和测试目的,而不是用于开发。

5.2 解压安装,半成功 【JDK21】【放弃】

在这里插入图片描述
【Android】SDK安装及配置

  • 解压后双击运行SDK Manager.exe
  • 如果闪退,如下操作
    【Android】SDK Manager打开闪退问题
rem Check we have a valid Java.exe in the path.
set java_exe=E:\Java\jdk-21\bin\java.exe
  • 选项
    一般根据默认推荐安装即可。如果自选,必选项:
    • Android SDK Tools:基础工具包,版本号带rc字样的是预览版。
    • Android SDK Platform-tools:从android2.3开始划出此目录,存放公用开发工具,比如adb、sqlite3等,被划分到了这里。
    • Android SDK Build-tools:Android项目构建工具。
    • SDK Platform:对应平台的开发工具,需要下载Android xxx(API xx)的版本里面已经包含了。
    • Android xxx(API xx) :可选的各平台开发工具,一般选择最新版本即可。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下载失败

在这里插入图片描述

6 安装 Android Studio

Flutter 依赖 Android Studio 的全量安装来为其提供 Android 平台的支持 包括Android SDK。

6.1 下载地址

https://developer.android.google.cn/studio?hl=zh-cn

【2023最新】Android Studio + JDK11安装配置一条龙

以管理员权限安装,否则报错如下:
在这里插入图片描述

6.2 Android Studio 中 Android SDK 下载如下4个 SDK Tools

  • Android SDK Build-Tools
  • Android SDK Command-line Tools
  • Android SDK Platform-Tools
  • Android sDK Tools

在这里插入图片描述

防止出现如下类似报错:

✗ cmdline-tools component is missingRun `path/to/sdkmanager --install "cmdline-tools;latest"`

6.3 为 flutter 配置 Android SDK 目录 【flutter doctor】

flutter config --android-sdk “E:\Android\Android SDK”

6.4 Android 许可证状态

运行以下命令以接受Android SDK的许可证:

flutter doctor --android-licenses

配置成功如下

在这里插入图片描述

几个常见问题

几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK

7 下载模拟器 并 配置 [主机中安装,虚拟机中安装太卡]

7.1 模拟器对比

在这里插入图片描述

7.2 模拟器下载安装

7.3 配置模拟器 【同一系统内】

管理员权限打开 cmd,然后进入夜神模拟器目录,输入如下命令:

nox_adb.exe connect 127.0.0.1:62001

如下报错,原因是模拟器没有运行:
unable to connect to 127.0.0.1:62001: cannot connect to 127.0.0.1:62001: 由于目标计算机积极拒绝,无法连接。 (10061)

在这里插入图片描述

7.3 配置模拟器 【虚拟机 + 主机】

网络设置介绍

在这里插入图片描述
NAT转换:大部分虚拟机默认的 NAT 转换,虚拟机能 ping 通主机(如果主机防火墙没问题),但是,主机 ping 不通虚拟机。
桥接网卡:主机与虚拟机能互相 ping 通,虚拟机不能联网。

网卡1:选择桥接网卡;
网卡2:选择nat转换;
虚拟机中配置正确的ip地址(与你主机同一子网)。

VMware虚拟机网络设置

网络设置

虚拟机的网络模式是NAT模式,且NAT模式的网卡是VMnet8
在这里插入图片描述
在这里插入图片描述

w10 虚拟机默认自动获取IP

在这里插入图片描述
也可以自定义IP
在这里插入图片描述

注意:关闭 win10 虚拟机中的防火墙

关闭防火墙后,主机才能 ping 通虚拟机。
在这里插入图片描述

VMware虚拟机上通过adb连接物理机上的Android模拟器 【端口转发】

VMware虚拟机上通过adb连接物理机上的Android模拟器

在主机 Windows 以管理员身份运行cmd,然后执行命令

netsh interface portproxy add v4tov4 listenport=16666 listenaddress=0.0.0.0 connectport=62001 connectaddress=127.0.0.1

listenport: 是自己设定一个端口,可以设定为 16666 ,也可以设成别的;
listenaddress: 是虚拟机的ip,如果你不只一台虚拟机有这个需求,这里也可以设成0.0.0.0,监听所有ip地址向 16666 端口的访问;
connectport: 是原来在Windows连Android模拟器的端口;
connectaddress: 如果你的模拟器就在windows本地开的就127.0.0.1,当然如果想远程连另一台电脑上的,可以改成另一台电脑的ip,同样在那台电脑上也要做端口转发;

然后就可以在虚拟机上通过adb连模拟器(ip是主机,注意这里端口是自定义的 16666 ,不是模拟器原来的21503)

nox_adb.exe connect 192.168.4.63:16666

最后,如果想要删除转发规则,执行命令

netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=16666

8 示例

8.1 创建 Demo 工程

同时按下ctrl + shift + p 输入flutter
选择new Project

8.2 启动模拟器

在主机 Windows 以管理员身份运行cmd,然后执行命令

netsh interface portproxy add v4tov4 listenport=16666 listenaddress=0.0.0.0 connectport=62001 connectaddress=127.0.0.1

listenport: 是自己设定一个端口,可以设定为 16666 ,也可以设成别的;
listenaddress: 是虚拟机的ip,如果你不只一台虚拟机有这个需求,这里也可以设成0.0.0.0,监听所有ip地址向 16666 端口的访问;
connectport: 是原来在Windows连Android模拟器的端口;
connectaddress: 如果你的模拟器就在windows本地开的就127.0.0.1,当然如果想远程连另一台电脑上的,可以改成另一台电脑的ip,同样在那台电脑上也要做端口转发;

然后就可以在虚拟机上通过adb连模拟器(ip是主机,注意这里端口是自定义的 16666 ,不是模拟器原来的21503)

nox_adb.exe connect 192.168.4.63:16666

最后,如果想要删除转发规则,执行命令

netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=16666

8.3 运行 flutter 项目

可以直接在控制台输入 flutter run,就可以在夜神模拟器打开app
如果需要热更新,则可以点击右上角debug
在这里插入图片描述

8.4 debug版本 在夜神模拟器中运行

在这里插入图片描述
在这里插入图片描述

8.5 release版本 在手机中运行【Android】

release包体积较debug包小很多
android 打包命令: flutter build apk
ios 打包命令: flutter build ios --release

在目录下找到apk,然后下载到手机中安装就行。
在这里插入图片描述

其他

flutter 手机架构问题

https://blog.csdn.net/weixin_44911775/article/details/132306275

方案一:只适配armeabi
优点:基本上适配了全部CPU架构(除了淘汰的mips和mips_64)
缺点:性能低,相当于在绝大多数手机上都是需要辅助ABI或动态转码来兼容

方案二:只适配 armeabi-v7a
同理方案一,只是又筛掉了一部分老旧设备,在性能和兼容二者中比较平衡

方案三: 只适配 arm64-v8
优点: 性能最佳
缺点: 只能运行在arm64-v8上,要放弃部分老旧设备用户

这三种方案都是可以的,现在的大厂APP适配中,这三种都有,大部分是前2种方案。具体选哪一种就看自己的考量了,以性能换兼容就arm64-v8,以兼容换性能armeabi,二者稍微平衡一点的就armeabi-v7a。

目前来说,大多数的大厂APP用的都是armeabi或armeabi-v7a。

flutter 安装包体积过大,包体积优化策略

https://www.jianshu.com/p/6cc7c8190c02

参考

1、在 Windows 操作系统上安装和配置 Flutter 开发环境
2、1.3 搭建Flutter开发环境
3、Flutter入门教程(三) 教你如何实现VSCode高效开发
4、JDK21下载+安装+环境配置教程(Windows系统)
5、【Android】SDK安装及配置
6、【Android】SDK Manager打开闪退问题
7、AndroidSDK安装配置(Windows)
8、Android System Image - Google API PlayStores Intel Atom x86 System Images Direct Download
9、Android SDK与Android模拟器安装
10、VSCode配置Flutter模拟器
11、Android SDK 地址,全
12、Android开发者必备工具-常见Android模拟器(MuMu、夜神、蓝叠、逍遥、雷电、Genymotion…)
13、good–windows+vscode+夜神模拟器 flutter环境配置
14、cmdline-tools component is missing

相关文章:

Flutter环境搭建【win10虚拟机】+夜神模拟器【主机】

Flutter环境搭建 0 Android Studio 与 VS Code 资源消耗对比1 系统配置要求2 Flutter SDK2.1 获取 Flutter SDK2.2 解压2.3 更新 path 环境变量Dart SDK 要兼容 Flutter SDK双击 flutter_console.bat 输入 flutter doctor 检测环境 3 VS code 与插件3.1 安装 VS code3.2 安装 f…...

【数据结构和算法】种花问题

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 2.1 ​​​​​方法一:贪心 2.2 贪心算法一般思路 三、代码 3.1 ​​​​​方法一&#xf…...

Vite+Electron快速构建一个VUE3桌面应用(一)

一. 简介 首先,介绍下vite和Electron。 Vite是一种新型前端构建工具,能够显著提升前端开发体验。Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入Chromium和Node.js到二进制的 Electron 允许您保持一个 JavaScript 代码代码…...

第二百八十九回

文章目录 1. 概念介绍2. 方法与细节2.1 实现方法2.2 具体细节 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何混合选择多个图片和视频文件"相关的内容,本章回中将介绍如何通过相机获取视频文件.闲话休提,让我们一起Talk Flutter吧。 1. …...

Likeshop多商户商城源码系统,支持二开

在电商行业高速发展的当下,拥有一套功能强大、易于操作的开源商城系统至关重要。Likeshop多商户商城系统正是这样一款集H5、小程序、独立APP于一体的开源电商解决方案,助力商家实现智能营销。 一、产品简介 Likeshop多商户商城系统为商家提供了丰富的营…...

Excel:将截面数据转换成面板数据

原始截面数据如下: 步骤:数据——自表格/区域 点击确定,出现下图: 然后,在这个界面选择:“转换”——“逆透视列”下选择逆透视其他列。会出现面板数据形式。 然后,点击“主页”——关闭并上载即…...

209.长度最小的子数组(力扣LeetCode)

文章目录 209.长度最小的子数组题目描述暴力滑动窗口 209.长度最小的子数组 题目描述 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, …, numsr-1, numsr] ,并返回其长度…...

Docker容器部署OpenCV,打造高效可移植的计算机视觉开发环境

推荐 海鲸AI-ChatGPT4.0国内站点:https://www.atalk-ai.com 前言 在计算机视觉领域,快速部署和测试算法是研究和开发的关键。OpenCV作为一个强大的开源计算机视觉库,广泛应用于各种图像处理和视频分析任务。然而,配置OpenCV环境可…...

【Linux】Linux系统编程——pwd命令

文章目录 1.命令概述2.命令格式3.常用选项4.相关描述5.参考示例 1.命令概述 pwd(Print Working Directory)命令用于显示用户当前工作目录的完整路径。这是一个常用的命令,帮助用户确定他们目前所在的目录位置。 2.命令格式 基本的 pwd 命令…...

暴力破解

暴力破解工具使用汇总 1.查看密码加密方式 在线网站:https://cmd5.com/ http://www.158566.com/ https://encode.chahuo.com/kali:hash-identifier2.hydra 用于各种服务的账号密码爆破:FTP/Mysql/SSH/RDP...常用参数 -l name 指定破解登录…...

VirtualBox安装Ubuntu22.04

目录 1、新建虚拟机 1.1、设置内存大小 1.2、创建虚拟硬盘 2、虚拟机设置 2.1、设置启动顺序​编辑 2.2、选择iso镜像文件 2.3、设置网络(桥接网卡) 3、启动 3.1、设置语言环境 3.2、系统更新安装(不更新) 3.3、选择键盘布局(默认即可) 3.4、选择安装类型 3.5、网…...

85 总结一下最近遇到的一些 jar发布 相关的知识

前言 呵呵 最近有一些构建服务, 发布服务的一些需求 我们这里的服务 一般来说是 java application, spring boot application 针对发布, 当然最好是 增量发布, 尽量的减少需要传递给 发布服务器 的资源的大小 比如 我的这个 java application, 可能会存在很多依赖, 常规…...

Vue组件之间的通信方式都有哪些

Vue组件之间的通信方式 组件间通信的概念组件间通信解决了什么组件间通信的分类 父子组件之间的通信兄弟组件之间的通信祖孙与后代组件之间的通信非关系组件间之间的通信 组件间通信的方案 props传递数据$emit 触发自定义事件refEventBusparent、rootattrs与listenersprovide …...

C# 只读文件删除提示失败,给文件修改属性

需求背景:处理文件后,删除源文件信息,但不能确保源文件是只读文件,因此需要修改文件属性 //设置文件属性 string path "文件路径"; File.SetAttributes(path, FileAttributes.Normal); //删除文件 File.Delete(path);参…...

Redis 实际项目中的整合,记录各种用法

Redis缓存餐厅数据 我们来看主要的流程 很简单,就是在数据库和接口之间加了一层缓冲,在redis之前其实还可以加其他的缓存 例如 nginx的缓存 接下来,就是结合我的业务,来做缓存 我这里的业务逻辑是,按了分类的按钮,分别以不同的 分类为一组缓存数据 所以,这里的缓存粒度是分类…...

iOS推送通知

文章目录 一、推送通知的介绍1. 简介2. 通知的分类 二、本地通知1. 本地通知的介绍2. 实现本地通知3. 监听本地通知的点击 三、远程通知1. 什么是远程通知2. 为什么需要远程通知3. 远程通知的原理4. 如何做远程通知5. 远程通知证书配置6. 获取远程推送要用的 DeviceToken7. 测试…...

安全产品与等级保护:匹配与选择指南

基本要求项测评项基本措施对应产品网络架构应保证网络各个部分的带宽满足业务高峰期需要;带宽管理流量控制系统应避免将重要网络区域部署在边界处,重要网络区域与其他网络区域之间应采取可靠的技术隔离手段;网络及安全设备配置访问控制策略防…...

网络分层和网络原理之UDP和TCP

温故而知新 目录 网络分层 应用层 http协议 传输层 介绍 UDP协议 TCP协议 网络层 数据链路层 物理层 网络分层 一. 应用层 应用程序 现成的应用层协议有超文本协议http(不仅仅有文本). http协议 http://t.csdnimg.cn/e0e8khttp://t.csdnimg.cn/e0e8k 自定义应…...

软件包管理:在CentOS 7中部署Tengine

目录 下载: 方法一: 方法二: 部署: 实验操作 下载: 方法一: 1、打开浏览器搜索tengine并点击官网 2、选择需要安装的版本并复制链接链接 标题栏处可以更改为中文界面 下滑选择版本单击下载 在远程连…...

爬取A站视频,涉及m3u8格式的处理

一、抓包分析 1.进入A站进行抓包分析 进入一个页面,右点击鼠标按钮,点击检查 接着点击network,点击Fetxh/XHR,然后刷新网页,得到下面的页面 发现其中有许多d595开头的文件,它们是ts文件,点击其中一个。在…...

《微信小程序开发从入门到实战》学习九十四

7.1 视图容器组件 7.1.4 movable-view和movable-area组件 movable-view是一个可移动的视图容器,它需要与movable-area组件结合使用。movabke-view只能放在movable-area组件中,在movable-area组件的范围内拖曳滑动。 movable-view组件属性如下&#xf…...

深度学习记录--Batch Norm

Batch Norm 与Input Norm对输入层进行归化不同,Batch Norm是对隐藏层进行归化 实现 ,其中、调节均值和方差 ,...

svn和git的本质区别是什么

参考: https://blog.csdn.net/feiying0canglang/article/details/126550676 上边图中,跨越了区的箭头,它中间的区数据都会同步。例如:git checkout ,它是将本地仓库数据更新到暂存区和工作区的。\ 理解 gitlab和svn都…...

Redis面试

1.说说什么事redis Redis是一种基于键值对的NoSql数据库。 Redis中的value支持string(字符串)、hahs(哈希)、list、set、zset(有序集合)、bitmaps(位图),HyperLoglog等数…...

贪吃蛇(C)

游戏背景:贪吃蛇是久负盛名的游戏,它也和俄罗斯⽅块,扫雷等游戏位列经典游戏的⾏列。 总: 游戏设计大纲: 使⽤C语⾔在Windows环境的控制台中模拟实现经典⼩游戏贪吃蛇。 实现的基本功能: 1、贪吃蛇地图绘制。 2、蛇吃⻝物的功能 (上、下、左、右⽅向键控制蛇的动作)。 …...

【云原生】Docker基于Dockerfile多级构建,实现缩小镜像体积

目录 一、基于上次的nginx的Dockerfile做多级构建 二、基于上次的php的Dockerfile修改做多级构建 三、基于上次的mysql的Dockerfile修改做多级构建 基于以上三个镜像构建 四、镜像体积是不是越小越好?为什么要缩减镜像体积? 五、缩小镜像体积的方法…...

第七十一周周报

学习目标: 一、实验 二、小程序 学习时间: 2024.1.20-2024.1.26 学习产出: 一、小程序 这周花了两天根据陈勇和纪行之的代码优化了小程序的代码 二、实验 根据stylegan2仓库的redeme文件重新跑了stylegan2和diffusion-stylegan2 DV…...

绿色制造的行业标杆OEKO-TEX STeP认证

STeP是“OEKO-TEX国际环保纺织协会”推出的一个独立的第三方认证体系。STeP全称Sustainable Textile & Leather Production(可持续纺织和皮革生产),是面向纺织和皮革供应链中环保且负有社会责任的生产工厂推出的透明认证体系。 STeP认证的…...

第3章:Python 的函数和模块(基于最新版 Python3.12 编写)

文章目录 3.1 函数:编写你的代码乐曲3.1.1 什么是函数?3.1.2 如何定义函数?3.1.3 如何调用函数?3.1.4 函数的返回值3.1.5 函数的文档字符串3.1.6 默认参数值3.1.7 可变数量的参数3.1.8 局部变量和全局变量3.1.9 递归函数 3.2 模块…...

网络安全产品之认识漏洞扫描设备

文章目录 一、什么是漏洞扫描设备二、漏洞扫描设备的主要功能三、漏洞扫描设备的主要技术四、漏洞扫描设备的主要类型五、漏洞扫描设备的使用方式六、漏洞扫描设备如何与其他安全设备联动七、漏洞扫描设备的应用场景 漏洞是指在硬件、软件、协议的具体实现或系统安全策略上存在…...

做网站的时候宽度都怎么弄/最有效的线下推广方式

进程间通信在Windows客户端中也经常会有用到,很多客户端都需要多个进程来合作完成任务。比如说第三方sdk容器进程或者是后台服务进程。Windows上的进程间通信方式比较多,常用的就是共享内存。 通用的做法是,创建一块共享内存,一个…...

安徽设计网站建设/公司网站设计

方法: getCurrentPosition: 获取当前设备位置信息watchPosition: 监听设备位置变化信息clearWatch: 关闭监听设备位置信息 对象: Position: JSON对象,设备位置信息数据Address: JSON对象,地址信息Coordinates: JSON对象&#xf…...

网站建设费用大概多少/app拉新任务平台

首先说下问题现象:内网sandbox环境API持续1周出现应用卡死,所有api无响应现象刚开始当测试抱怨环境响应慢的时候 ,我们重启一下应用,应用恢复正常,于是没做处理。但是后来问题出现频率越来越频繁,越来越多的…...

网站建设的作用有哪些/小红书推广引流软件

软件下载地址: 趣盘下载 软件功能: 专门针对Discuz! 7论坛开发的看贴工具。快速读取指定栏目下的贴子(按指定页数读取),是一种贴子快速浏览工具。同时,本软件也可以下载指定的贴子,你完全可以把他们做为贴…...

游戏网站代码/超级软文网

■set 置数; ■unset 这个命令从解释器中删除变量,它后面可以有任意多个参数,每个参数是一个变量名,可以是简单变量,也可以是数组或数组元素。例如: % unset a b day(monday) 上面的语句中删除了变量 a、 b 和数组元素…...

日本做头像的网站/全面的seo网站优化排名

编译时 编译时顾名思义就是正在编译的时候 . 那啥叫编译呢?就是编译器帮你把源代码翻译成机器能识别的代码 .(当然只是一般意义上这么说,实际上可能只是翻译成某个中间状态的语言.比如 Java 只有JVM识别的字节码,C#中只有CLR能识别的MSIL.另外还有啥链接器.汇编器.为了了便于…...