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

在 .NET 8 Release Candidate 1 中推出 .NET MAUI:质量

作者:David Ortinau
排版:Alan Wang

今天,我们很高兴地宣布 .NET MAUI 在 .NET 8 Release Candidate 1 中已经可用,该版本带有适用于生产应用程序的正式许可证,因此您可以放心地将此版本用于生产环境。我们在 .NET 8 中进行的 .NET MAUI 工作的主题是代码质量。此版本还引入了对 App SDK Xcode 15 beta 的初步支持。

质量改进

37 名开发人员为本版本做出了贡献,我们感谢大家的辛勤工作,包括首次贡献者 cat0363, Salar K, Mausam Shrestha, Diana Soltani, Emanuel Fernandez Dell’Oca, 和 John Hollander。

此版本的亮点:

内存泄漏解决方案

解决了在 iOS 平台上多个 UI 控件内存泄漏的问题。这些修复可确保提升内存管理和应用程序稳定性。具体来说,修复了 Editor、Entry、MauiDoneAccessoryView、RefreshView、SwipeView、TimePicker、Picker 和 GraphicsView 中的内存泄漏问题。
(#16348, #16349, #16380, #16384, #16532, #16589, #16265, #16605, #16614, #16685)。

UI 控件改进

解决了多个平台上各种 UI 控件问题,包括 CheckBox、RefreshView、SwipeItem、Label 和 Button。这些改进有助于实现更顺畅的应用交互。
(#16376, #16384, #15883, #16387, #16410, #16458, #16385, #16532, #16589, #16605, #16265)。

修复特定平台的问题

解决了各种平台(包括 iOS、Android、Windows 和 macOS)上的特定平台的问题。这些修复确保了不同平台上一致的用户体验,解决了边框剪切、窗口故障和图像加载问题等问题。
(#14403, #15832, #14861, #16637, #16593, #16762, #16644, #16678, #16700, #16800, #16560, #16752, #16833, #16853, #16162, #16758, #16633, #16798, #16762, #16678)。

性能优化

已经进行了性能增强,以改善内存使用和资源生成。这些优化措施有助于提升应用程序的流畅性和响应性。显著的优化包括改善 CollectionView 的内存使用、资源生成控制以及 Android 计时器问题。
(#16990, #16838, #16941, #16762, #16963, #16845, #16741, #16644, #17062)。

附加信息:
• .NET MAUI 发行说明
• 适用于 Android 的 .NET
• 适用于 iOS 和 Mac 的 .NET

Xcode 15 支持

现在,您可以使用 Xcode 15 beta 来进行应用程序构建和模拟器管理,并且这将在 Visual Studio 的下一版本中提供。在 .NET 8 的下一个版本中,我们将开始为 Apple SDK(例如 iOS 17)引入新的 API。我们已经使用 Xcode 15 Beta 6 验证了这一点,不过更高的版本应该也能正常工作。
在这里插入图片描述

如何更新

您可以在所有平台上通过 Visual Studio Code 使用 .NET MAUI 进行开发。 安装 .NET MAUI 扩展并让我们知道将来如何为您改进预览体验。

请下载 .NET 8 RC1 安装程序,然后通过命令行安装 .NET MAUI:
dotnet workload install maui

在 Visual Studio for Mac 停用后,您可以在“Preferences”中启用 .NET 8 的预览功能后继续使用 Visual Studio for Mac 进行开发。

在 Windows 上,您可以更新或安装 Visual Studio 2022 17.8 预览版 2以获取带有 .NET MAUI 的 .NET 8 RC1。

欢迎反馈

我们感谢您对 .NET MAUI 的反馈和贡献。您可以在 GitHub 存储库上报告问题、建议功能或提交请求。您还可以加入我们的 Discord 服务器来寻求贡献帮助。

感谢您的支持,祝您编码愉快!

相关文章:

在 .NET 8 Release Candidate 1 中推出 .NET MAUI:质量

作者:David Ortinau 排版:Alan Wang 今天,我们很高兴地宣布 .NET MAUI 在 .NET 8 Release Candidate 1 中已经可用,该版本带有适用于生产应用程序的正式许可证,因此您可以放心地将此版本用于生产环境。我们在 .NET 8 中…...

Spring 学习(八)事务管理

1. 事务 1.1 事务的 ACID 原则 数据库事务(transaction)是访问并可能操作各种数据项的一个数据库操作序列。事务必须满足 ACID 原则——即原子性(Atomicity)、一致性(Consistency)、隔离性(Iso…...

CodeTON Round 6 (Div 1 + Div 2, Rated, Prizes!)(A - E)

CodeTON Round 6 (Div. 1 Div. 2, Rated, Prizes!)(A - E) CodeTON Round 6 (Div. 1 Div. 2, Rated, Prizes!) A. MEXanized Array&#xff08;分类讨论&#xff09; 可以发现当 n < k 或者 k > x 1 的时候无法构成 &#xff0c; 其余的时候贪心的用 x 最大化贡献即…...

Spring 源码分析(五)——Spring三级缓存的作用分别是什么?

Spring 的三级缓存是经典面试题&#xff0c;也会看到一些文章讲三级缓存与循环依赖之的关系。那么&#xff0c;三级缓存分别存储的什么呢&#xff1f;他们的作用又分别是什么&#xff1f; 一、一、二级缓存 一级缓存是一个名为 singletonObjects 的 ConcurrentHashMap&#x…...

Django基于类视图实现增删改查

第一步&#xff1a;导入View from django.views import View 第二步&#xff1a;新建这个基类 class CLS_executer(View):db DB_executerdef get(self, request):executer_list list(self.db.objects.all().values())return HttpResponse(json.dumps(executer_list), conte…...

matplotlib绘图实现中文宋体的两种方法(亲测)

方法一&#xff1a;这种方法我没有测试。 第一步 找宋体字体 &#xff08;win11系统&#xff09; 2.matplotlib字体目录&#xff0c;如果不知道的话&#xff0c;可以通过以下代码查询&#xff1a; matplotlib.matplotlib_fname() 如果你是Anaconda3 安装的matplotlib&#x…...

非常有用的JavaScript高阶面试技巧!

&#x1f340;一、闭包 闭包是指函数中定义的函数&#xff0c;它可以访问外部函数的变量。闭包可以用来创建私有变量和方法&#xff0c;从而保护代码不受外界干扰。 // 例1 function outerFunction() {const privateVariable "私有变量";function innerFunction()…...

windows 安装Linux子系统 Ubuntu 并配置python3

环境说明&#xff1a; Windows 11 Ubuntu 20.04.6 安装步骤以及问题&#xff1a; 1、开启Windows Subsystem for Linux dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 2、开启虚拟机特性 dism.exe /online /enabl…...

pytorch的pixel_shuffle转tflite文件

torch.pixel_shuffle()是pytorch里面上采样比较常用的方法&#xff0c;但是和tensoflow的depth_to_space不是完全一样的&#xff0c;虽然看起来功能很像&#xff0c;但是细微是有差异的 def tf_pixelshuffle(input, upscale_factor):temp []depth upscale_factor *upscale_f…...

sentinel-dashboard-1.8.0.jar开机自启动脚本

启动阿里巴巴的流控组件控制面板需要运行一个jar包&#xff0c;通常需要运行如下命令&#xff1a; java -server -Xms4G -Xmx4G -Dserver.port8080 -Dcsp.sentinel.dashboard.server127.0.0.1:8080 -Dproject.namesentinel-dashboard -jar sentinel-dashboard-1.8.0.jar &…...

c++堆排序-建堆-插入-删除-排序

本文以大根堆为例&#xff0c;用数组实现&#xff0c;它的nums[0]是数组最大值。 时间复杂度分析&#xff1a; 建堆o(n) 插入删除o(logn) 堆排序O(nlogn) 首先上代码 #include<bits/stdc.h>using namespace std; void down(vector<int>&nums, int idx, i…...

使用代理后pip install 出现ssl错误

window直接设置代理 httphttp://127.0.0.1:7890;httpshttp://127.0.0.1...

护眼灯什么价位的好?最具性价比的护眼台灯推荐

到了晚上光线比较弱&#xff0c;这时候就需要开灯&#xff0c;要是孩子需要近距离看字学习等等&#xff0c;给孩子选择的灯具要特别的重视。护眼灯就是目前颇受学生家长青睐的灯具之一&#xff0c;越来越多的人会购买一个护眼灯给自己的孩子让孩子能够在灯光下学习的时候&#…...

vue event bus 事件总线

vue event bus 事件总线 创建 工程&#xff1a; H:\java_work\java_springboot\vue_study ctrl按住不放 右键 悬着 powershell H:\java_work\java_springboot\js_study\Vue2_3入门到实战-配套资料\01-随堂代码素材\day04\准备代码\08-事件总线-扩展 vue --version vue crea…...

深信服云桌面用户忘记密码后的处理

深信服云桌面用户忘记了密码&#xff0c;分两种情况&#xff0c;一个是忘记了登录深信服云桌面的密码&#xff0c;另外一个是忘记了进入操作系统的密码。 一、忘记了登录深信服云桌面的密码 登录虚拟桌面接入管理系统界面&#xff0c;在用户管理中选择用户后&#xff0c;点击后…...

Cocos Creator3.8 实战问题(一)cocos creator prefab 无法显示内容

问题描述&#xff1a; cocos creator prefab 无法显示内容&#xff0c; 或者只显示一部分内容。 creator编辑器中能看见&#xff1a; 预览时&#xff0c;看不见内容&#xff1a; **问题原因&#xff1a;** prefab node 所在的layer&#xff0c;默认是default。 解决方法&…...

朴素贝叶斯深度解码:从原理到深度学习应用

目录 一、简介贝叶斯定理的历史和重要性定义例子 朴素贝叶斯分类器的应用场景定义例子常见应用场景 二、贝叶斯定理基础条件概率定义例子 贝叶斯公式定义例子 三、朴素贝叶斯算法原理基本构成定义例子 分类过程定义例子 不同变体定义例子 四、朴素贝叶斯的种类高斯朴素贝叶斯&a…...

RUST 每日一省:闭包

Rust中的闭包是一种可以存入外层函数中变量或作为参数传递给其他函数的匿名函数。你可以在一个地方创建闭包&#xff0c;然后在不同的上下文环境中调用该闭包来完成运算。和一般的函数不同&#xff0c;闭包可以从定义它的作用域中捕获值。 语法 闭包由“||”和“{}”组合而成。…...

Ubuntu下文件的解压缩操作:常用zip和unzip

Ubuntu下文件的解\压缩 压缩一个文件夹为zip包&#xff0c;加参数-r&#xff1a; zip -r MyWeb.zip MyWeb需要排除目录里某个文件夹&#xff1f;例如我要去掉node_modules&#xff0c;以显著减小压缩包体积&#xff0c;此时该怎么做&#xff1f; zip -r MyWeb.zip ./MyWeb…...

Linux学习第22天:Linux中断驱动开发(一): 突如其来

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 中断作为驱动开发中很重要的一个概念&#xff0c;在实际的项目实践中经常用到。本节的主要内容包括中断简介、硬件原理分析、驱动程序开发及运行测试。其中驱动程…...

多模态扩展:OpenClaw+GLM-4.7-Flash处理图片信息

多模态扩展&#xff1a;OpenClawGLM-4.7-Flash处理图片信息 1. 为什么需要多模态能力 上周我在整理产品截图时遇到一个典型问题&#xff1a;需要从200多张UI截图中提取所有按钮文字和位置信息。手动操作不仅耗时&#xff0c;还容易遗漏细节。这让我开始思考——能否让OpenCla…...

从Python转C++必看:C++20的starts_with/ends_with和Python有何不同?5个易错点详解

从Python转C必看&#xff1a;C20的starts_with/ends_with和Python有何不同&#xff1f;5个易错点详解 当你在Python中熟练使用startswith()和endswith()多年后&#xff0c;突然切换到C20的starts_with和ends_with&#xff0c;可能会觉得"这不就是换个语法吗&#xff1f;&q…...

给嵌入式新手的保姆级指南:JTAG、SWD、J-Link、ST-Link到底怎么选?

嵌入式开发调试工具全指南&#xff1a;从JTAG到SWD的实战选择策略 第一次拿到STM32开发板时&#xff0c;看着板子上那排密密麻麻的调试接口针脚&#xff0c;我盯着J-Link和ST-Link这两个名词发了半小时呆——它们到底有什么区别&#xff1f;为什么有的教程用JTAG接线&#xff0…...

【Hot 100 刷题计划】 LeetCode 138. 随机链表的复制 | C++ 链表深拷贝题解

LeetCode 138. 随机链表的复制 | C 哈希表 DFS 深拷贝题解 &#x1f4cc; 题目描述 题目级别&#xff1a;中等 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点。 请你构造这个链表的深拷…...

链式前向星:高效图存储的进阶指南

1. 为什么需要链式前向星&#xff1f; 当你第一次接触图论算法时&#xff0c;可能会被邻接矩阵和邻接表搞得晕头转向。我刚开始学图论的时候&#xff0c;就经常在这两种存储方式之间纠结。邻接矩阵写起来简单&#xff0c;一个二维数组就能搞定&#xff0c;但当节点数超过10000时…...

毕业论文神器 2026 降AI率平台推荐:工具对比+最好用AI推荐

2026年真正好用的AI论文降重与改写工具&#xff0c;核心看降重效果、去AI味、格式保留、学术适配四大指标。综合实测&#xff0c;千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队&#xff0c;覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 …...

AnythingtoRealCharacters2511效果展示:动漫角色真人化案例

AnythingtoRealCharacters2511效果展示&#xff1a;动漫角色真人化案例 你有没有想过&#xff0c;如果自己喜欢的动漫角色真的出现在现实世界里&#xff0c;会是什么样子&#xff1f;不是那种粗糙的3D建模&#xff0c;也不是简单的滤镜叠加&#xff0c;而是看起来就像用专业相…...

YOLOv7剪枝实战:5种高效剪枝方法对比与代码实现

YOLOv7剪枝实战&#xff1a;5种高效剪枝方法对比与代码实现 在目标检测领域&#xff0c;YOLOv7以其卓越的速度-精度平衡成为工业界宠儿。但当我们将模型部署到边缘设备或需要高吞吐量的生产环境时&#xff0c;原始模型的计算量和参数量往往成为瓶颈。这时&#xff0c;模型剪枝技…...

YOLOv11涨点改进| 全网独家创新、检测头Head改进篇| CVPR 2026顶会 |使用FAAHead改进YOLOv11的检测头,处理小目标、遮挡小目标检测、旋转目标检测有效涨点,助力高效发论文

一、本文介绍 🔥本文给大家介绍使用CVPR 2026顶会 FAAHead 和 OBB_FAAHead 改进 YOLOv11的检测头,可以有效缓解目标检测中分类分支与框回归分支之间的特征冲突问题,尤其适合旋转目标检测或含明显方向信息的目标检测任务。FAAHead 的核心思想是在检测头阶段先对 RoI 或候选…...

UniApp实战:如何安全高效地在安卓10+设备上实现本地数据存储(附权限配置避坑指南)

UniApp安卓10本地数据存储实战&#xff1a;权限配置与高性能方案设计 当你的UniApp在安卓10设备上突然无法保存用户配置时&#xff0c;控制台那行冰冷的"Permission denied"可能让整个开发团队陷入深夜加班。这不是简单的API调用问题&#xff0c;而是安卓存储机制变革…...