使用 .NET MAUI 创建移动应用——Get Start
大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。
1、IDE下载安装
- 如果你还没安装Visual Studio 2022 预览版
你可以点击下载
在安装过程中,应选择.NET 跨平台应用程序 UI 开发,如下图所示:
- 已经拥有 Visual Studio 2022 预览版
如果您已经拥有 Visual Studio 2022 预览版,则可以更新以添加 .NET MAUI 支持。
2、创建应用
- 打开 Visual Studio 2022 预览版。
- 选择创建新项目按钮。
- 从项目类型下拉列表中选择MAUI 。
- 选择.NET MAUI App模板并选择下一步按钮。
- 输入MyFirstMauiApp作为项目名称并选择Create按钮。
- 还原 NuGet 包
等待NuGet 自动还原应用程序的依赖项,等到屏幕左下方的状态栏中出现已恢复或就绪消息。
3、运行应用
本教程将重点介绍首先将 .NET MAUI 应用程序部署到本地 Windows 计算机。稍后,您可以选择设置 Android 设备或模拟器。
- 为开发设置 Windows
要开发 Windows 应用程序,您需要启用开发人员模式以在 Windows 11 或 Windows 10 上旁加载应用程序。
启用开发者模式
- 在 Windows 上,转到“设置”应用程序。
- 在 Windows 11 上的隐私和安全和 Windows 10 上的更新和安全中搜索开发人员设置。
- 打开Developer Mode下的切换开关。
4.将显示使用开发人员功能对话框。选择“是”以确认您要启用开发者模式。
- 在 Windows 上运行
现在已准备好运行 .NET MAUI 应用并将其部署到 Windows。在工具栏中,默认将Windows 机器视为调试目标。
选择“调试” > “开始调试F5”(或按)
4、编辑代码
使用 .NET MAUI 开发时,可以在调试时使用 XAML 热重载。这意味着您可以在运行时更改 XAML 用户界面, UI 将自动更新。
在解决方案资源管理器中,双击项目MainPage.xaml下的文件MyFirstMauiApp。
目前,Text第一个Label设置为Hello, World!如下代码所示:
<Label
Text="Hello, World!"
SemanticProperties.HeadingLevel="Level1"
FontSize="32"
HorizontalOptions="Center" >
将文本更新为Hello, .NET MAUI!:
<Label
Text="Hello, .NET MAUI!"
SemanticProperties.HeadingLevel="Level1"
FontSize="32"
HorizontalOptions="Center" >
UI 会自动更新:
使用 .NET MAUI 开发时,还可以使用 .NET Hot Reload 重新加载 C# 代码。我们修改程序中的逻辑,将计数增加 10 而不是 1。
打开MainPage.xaml.cs(此文件嵌套在 MainPage.xaml 下,或者您可以右键单击并从菜单中选择查看代码)。
该OnCounterClicked文件上的方法当前具有以下代码:
private void OnCounterClicked(object sender, EventArgs e)
{
count++; if (count == 1)
CounterBtn.Text = $"Clicked {count} time";
else
CounterBtn.Text = $"Clicked {count} times"; SemanticScreenReader.Announce(CounterBtn.Text);
}
通过将 更改为 来更新count++;以增加 10 count += 10;
private void OnCounterClicked(object sender, EventArgs e)
{
count += 10; if (count == 1)
CounterBtn.Text = $"Clicked {count} time";
else
CounterBtn.Text = $"Clicked {count} times"; SemanticScreenReader.Announce(CounterBtn.Text);
}
要应用代码更改,请在 Visual Studio 中选择热重载按钮或选择 ALT+F10.
选择“点击我”按钮,看到它增加了 10。
5、配置安卓设备
可以根据自己的开发环境决定部署到多个平台。刚刚运行并部署到 Windows。现在,让我们设置一个 Android 设备或模拟器。
- 安卓 SDK 安装
从调试下拉菜单中,选择框架下的 net6.0-android。
构建项目需要特定版本的 Android SDK。如果您尚未接受 Android SDK 许可,您将在错误列表窗口中看到以下错误消息。
双击消息以开始许可接受过程。对存在的每个许可证单击接受,然后将开始自动安装。
- 设置安卓模拟器
如果您没有要部署的 Android 设备,则可以设置 Android 模拟器。如果你已经这样做了,你可以跳过这一步。
如果这是您第一次构建 .NET MAUI 应用程序,您将在调试菜单中看到“Android Emulator”。单击它开始创建过程。
这会弹出用户帐户控制提示。选择是按钮,模拟器创建过程将开始。选择创建按钮以使用默认设置创建模拟器。
此时,可能会提示您同意 Android 模拟器的许可协议。选择接受以继续该过程,下载模拟器图像并完成模拟器的创建,创建模拟器后,您会看到一个显示Start的按钮。点击它。
您可能会收到启用 Windows Hypervisor 平台的提示。按照文档启用加速以提高性能(强烈推荐)
Android 模拟器将启动。等待它完全完成启动,您将看到它显示在 Visual Studio 调试菜单中。
您的 Android 模拟器现已创建并可以使用。下次运行 Visual Studio 时,模拟器将直接出现在调试目标窗口中,并在您选择它时启动。
- 设置安卓设备
要使用 Android 设备进行开发,需要启用 USB 调试。按照设备上的这些步骤将其连接到 Visual Studio。如果您没有 Android 设备,则可以跳过此部分。
启用开发者模式
- 转到设置屏幕。
- 使用设置屏幕顶部的搜索查找内部版本号,或在关于手机中找到它。
- 点击内部版本号7-10 次,直到“你现在是开发者了!” 弹出。
- 单击创建。
检查 USB 调试状态
- 转到设置屏幕。
- 使用设置屏幕顶部的搜索查找USB 调试,或在开发人员选项中找到它。
- 如果尚未启用USB 调试,请启用它。
信任装置
- 将您的设备插入计算机。
- 系统将提示您允许 USB 调试。
- 选中始终允许从此计算机。
- 单击允许。
您的设备现已配置好,并将作为部署目标显示在 Visual Studio 中。
- 在安卓上运行
确保您的设备或仿真器被选为调试目标。
从菜单中,选择调试>开始调试(或按F5)。如果禁用此选项,请确保选择了模拟器或设备。
应用程序将构建、部署到所选的 Android 设备/模拟器并运行。
使用 .NET MAUI 创建移动应用——Get Start的更多相关文章
- 【Maui正式版】创建可跨平台的Maui程序,以及有关依赖注入、MVVM双向绑定的实现和演示
前言:Maui终于在昨天(2022年8月9日)推送出来了.今儿就迫不及待来把玩一下先. A.我本地已有VS2022,不过版本比较老,此处选择更新.工具 -> 获取功能和更新里面,可以获取到新版本 ...
- 微软跨平台UI框架MAUI真的要来啦
.NET 6 preview已经上线,是时候为在BUILD 2020上宣布的新.NET Multi-platform App UI(MAUI)做准备了.对于客户端应用程序开发人员来说,这一年.NET有 ...
- 官宣 MAUI 在.NET Preview 3的最新进展
我们在.NET 6 Preview 3中交付了.NET多平台应用UI的移动和桌面开发的最新进展.此版本添加了Windows平台和WinUI 3,改进了基本应用程序和启动构建器,添加了原生生命周期事件, ...
- 乘风破浪,.Net Core遇见MAUI(.NET Multi-platform App UI),进击现代化跨设备应用框架
什么是MAUI https://github.com/dotnet/maui .NET Multi-platform App UI (MAUI) 的前身是Xamarin.Forms(适用于Androi ...
- 官宣 .NET MAUI 预览版 6
最近,我们发布了.NET 多平台应用程序UI (MAUI)的最新进展. 在此版本中,我们全力支持Visual Studio 2022 预览版2.这也标志着我们首次将.NET MAUI 作为工作负载安装 ...
- 最新.NET MAUI有什么惊喜?
.NET 6 Preview 7 现已发布啦,我们为 .NET 多平台应用程序 UI (MAUI) 引入了所有的新布局.这是性能和可靠性的重大变化.我们很高兴我们还增加了一些关于accessibili ...
- [MAUI] 在.NET MAUI中结合Vue实现混合开发
在MAUI微软的官方方案是使用Blazor开发,但是当前市场大多数的Web项目使用Vue,React等技术构建,如果我们没法绕过已经积累的技术,用Blazor重写整个项目并不现实. Vue是当前流 ...
- .NET MAUI 已在塔架就位 ,4月份RC
最美人间三月天,春光不负赶路人.在充满无限希望的明媚春天里,一路风雨兼程的.NET 团队正奋力实现新的突破. 根据计划,新一代移动开发平台MAUI 将于4月份 发布RC. 目前,MAUI的测试工作和火 ...
- 在 Mac 上开发 .NET MAUI
.NET 多平台应用程序 UI (.NET MAUI) 是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动和桌面应用程序,这些应用程序可以从单个共享代码库在 Android.iOS.macO ...
随机推荐
- 支付宝小程序中“<”号写法
今天遇到一个小问题,记录一下 "<"号在h5页面都是可以直接显示的,但是在运行支付宝小程序时报错,找了一个解决办法 <text> {{char_lt}} 18.5 ...
- EbitenCookBook中文教程 第一课:安装 Ebiten
本文实时更新原址:https://ebitencookbook.vercel.app/docs/CookBook_Start/class1 第一课 安装 Ebiten 欢迎大家来到 Ebiten 中文 ...
- Django框架中settings.py注释
1 # coding:utf8 2 """ 3 Django settings for DjangoTest project. 4 5 Generated by 'dja ...
- 如何利用MHA+ProxySQL实现读写分离和负载均衡
摘要:本文分享一下"MHA+中间件ProxySQL"如何来实现读写分离+负载均衡的相关知识. 本文分享自华为云社区<MySQL高可用架构MHA+ProxySQL实现读写分离和 ...
- docker更新portainer-ce2.0
前两天,我在使用portainer的过程中发现左下角提醒有新版本的portainer需要安装,google了一圈如何升级portainer,并没有找到我需要的资料,就算获取了portainer:las ...
- Codeforces Round #754 (Div. 2), problem: (A) A.M. Deviation泪目 万万没想到狂wa是因为这
Problem - A - Codeforces 题目 题意很简单每次操作可以使得a1 a2 a3任意两个数分别+1 -1 求最后使得a+c-2b绝对值的最小值 BUG就是最后忽略了-2和2这一点 ...
- JavaSE前期准备1
历史(建议了解即可) 一.1990年,美国Sun公司的"Stealth计划"(后改名为"Green计划")目标设置在家用电器等小型系统的程序语言,准备应用在电视 ...
- 云平台短信验证码通知短信java/php/.net开发实现
一.本文目的 大部分平台都有一个接入发送短信验证码.通知短信的需求.虽然市场上大部分平台的接口都只是一个非常普通的HTTP-GET请求,但终归有需要学习和借鉴使用的朋友. 本文的初衷是主要提供学习便利 ...
- Golang Zap日志
Zap日志解析 Config.yaml zap: level: 'info' #日志级别 format: 'console' #输出的级别,有console和json prefix: '[cateri ...
- 技术分享 | SeleniumIDE用例录制
1.录制回放方式的稳定性和可靠性有限 2.只支持 Firefox.Chrome 3.对于复杂的页面逻辑其处理能力有限 环境准备 Chrome 插件:https://chrome.google.com/ ...