在 Mac 上开发 .NET MAUI
.NET 多平台应用程序 UI (.NET MAUI) 是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动和桌面应用程序,这些应用程序可以从单个共享代码库在 Android、iOS、macOS 和 Windows 上运行。
先决条件
- Xcode 13 最新版本 - 可从 Mac App Store 或 https://developer.apple.com 下载
- Android Studio
- 最新的 Android SDK(API 31 或更高版本)
- Android 模拟器(可选)- 安装后,创建并启动 Android 模拟器。或者,您可以使用为开发配置的 Android 设备。
- OpenJDK 11
- VS Code(推荐)
使用 .NET MAUI 安装 .NET 6
- 从dotnet/installer下载并运行最新的 .NET 6 安装程序。
打开终端并检查您是否已准备好安装 .NET MAUI。
dotnet --version
- 使用workload工作负载安装命令安装 .NET MAUI:
sudo dotnet workload install maui --source https://api.nuget.org/v3/index.json
创建APP应用
创建一个新的应用程序并运行:
dotnet new maui -n "MyMauiApp"
cd MyMauiApp
dotnet build -t:Run -f net6.0-maccatalyst
这将恢复项目依赖项、编译应用程序并启动。-f 参数是“目标框架”。选项包括:
- net6.0-android
- net6.0-ios
- net6.0-maccatalyst
- net6.0-windows10.0.19041 (mac下不可运行)
要在 Windows 上运行 Windows(UWP)框架,需要安装 Visual Studio 2022 preview。
以 iOS 为目标
为了以 iOS 模拟器(iOS emulator)为目标,您需要提供设备 ID (UUID)。打开 Xcode,然后转到 Windows > 设备和模拟器 (Windows > Devices and Simulators)。右键单击要使用的模拟器并复制“设备标识符(Device Identifier)”。
现在将值附加到参数-p:_DeviceName=:v2:uuid=:
dotnet build -t:Run -f net6.0-ios -p:_DeviceName=:v2:udid=02C556DA-64B8-440B-8F06-F8C56BB7CC22
以安卓为目标
在构建 Android 应用程序之前,请启动模拟器或使用adb connect. 然后命令运行:
dotnet build -t:Run -f net6.0-android
故障排除提示:如果您收到错误提示您需要在 Visual Studio 中设置 JavaSdkDirectory,您可能需要将以下内容添加到项目目录中的文件“Directory.Build.props”中。
<Project>
<PropertyGroup>
<JavaSdkDirectory Condition="'$(JavaSdkDirectory)'=='' and '$(JAVA_HOME_8_X64)'!=''">$(JAVA_HOME_8_X64)</JavaSdkDirectory>
</PropertyGroup>
</Project>
参考资料 https://github.com/dotnet/maui/wiki/macOS-Install
---- > FreeSql QQ群:4336577(已满)、8578575(已满)、52508226(在线) > > BA & Blazor QQ群:795206915、675147445 ----
BlazorMaui+bb demo :GitHub | Gitee(仅副本)
在 Mac 上开发 .NET MAUI(全)https://www.cnblogs.com/densen2014/p/16057571.html
在 M1 Mac 上开发 .NET MAUI (iOS) https://www.cnblogs.com/densen2014/p/16057563.html
在 Windows 上开发 .NET MAUI https://docs.microsoft.com/zh-cn/dotnet/maui/get-started/installation
关联项目
FreeSql QQ群:4336577
BA & Blazor QQ群:795206915
Maui Blazor 中文社区 QQ群:645660665
知识共享许可协议
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名AlexChow(包含链接: https://github.com/densen2014 ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系 。
转载声明
本文来自博客园,作者:周创琳 AlexChow,转载请注明原文链接:https://www.cnblogs.com/densen2014/p/16057571.html