0

0

MAUI Blazor Hybrid怎么用 MAUI Blazor入门教程

月夜之吻

月夜之吻

发布时间:2026-01-01 04:51:10

|

500人浏览过

|

来源于php中文网

原创

maui blazor hybrid 是 .net 中融合原生跨平台能力(maui)与 web ui 开发体验(blazor)的方案,支持用 c# 编写 razor 组件并调用摄像头、蓝牙、nfc 等设备功能;需 visual studio 2022 v17.12+ 及对应工作负载,项目入口为 wwwroot/index.html,通过 maui essentials 或平台服务注入实现原生能力调用,权限须在各平台配置文件中声明。

maui blazor hybrid怎么用 maui blazor入门教程

MAUI Blazor Hybrid 是 .NET 生态中把原生跨平台能力(MAUI)和 Web UI 开发体验(Blazor)结合起来的方案,适合想用 C# 写界面、又需要调用摄像头、蓝牙、NFC、本地数据库等设备功能的场景。它不是纯 Web 应用,也不是传统 MAUI XAML 应用,而是“Blazor 组件跑在 MAUI 容器里”,页面逻辑用 Razor + C#,底层由 MAUI 提供平台桥接。

环境准备和项目创建

必须安装 Visual Studio 2022 v17.12 或更高版本,并启用两个工作负载:

  • .NET Multi-Platform App UI 开发
  • ASP.NET 和 Web 开发

创建方式有两种:

  • 在 Visual Studio 中:新建项目 → 筛选 “.NET MAUI Blazor Hybrid 应用” 模板 → 命名、选择框架(推荐 .NET 9 或 .NET 10)→ 创建
  • 在 VS Code 中:安装 .NET MAUI 扩展 + .NET SDK + MAUI 工作负载 → 命令面板输入 “.NET: Create Project” → 选 “.NET MAUI Blazor Hybrid App”

项目生成后,结构类似普通 MAUI,但 wwwroot/index.html 是入口,Pages/ 下是 Razor 组件,Platforms/ 下可写平台专用代码。

运行和调试多平台目标

刚创建的项目默认支持 Windows、Android、iOS(需 Mac)、macOS。常用启动方式:

  • Windows:工具栏选 “Windows Machine” → 自动拉起桌面窗口(需开启开发者模式)
  • Android:选 “Android Emulator” → 首次会提示安装 Android SDK 和接受许可证
  • iOS/macOS:需在 macOS 上用 VS for Mac 或 CLI 构建,Windows 上无法直接部署

注意:不同平台的权限(如相机、位置、蓝牙)需在对应 Platforms/xxx/Info.plistAndroidManifest.xml 中声明,否则运行时会拒绝访问。

遨虾
遨虾

1688推出的跨境电商AI智能体

下载

接入原生能力(比如摄像头、蓝牙)

MAUI Blazor Hybrid 的核心优势是能无缝调用原生 API。不是靠 JS 互操作硬桥接,而是通过 MAUI 的 Microsoft.Maui.Essentials 或平台服务注入:

  • 摄像头:用 MediaPicker.CapturePhotoAsync() 直接拍照,返回 FileResult,再转成 base64 或保存到本地
  • 蓝牙 BLE:引用 Plugin.BluetoothLE 或使用 MAUI Community Toolkit 的 BluetoothLE 封装,从 Blazor 页面通过 @inject 获取服务实例调用
  • 本地设置:用 Preferences.Set("key", value) 存取轻量数据,比手写文件更安全可靠

如果官方组件不支持某功能(比如 NFC),可在 Platforms/Android/MainActivity.cs 中扩展 Java/Kotlin 代码,再通过 MAUI 的 DependencyServiceMauiHandlers 暴露给 Blazor 层。

UI 库与样式定制

默认 UI 是基础 HTML + Bootstrap CSS。想提升体验,推荐集成 BootstrapBlazor

  • NuGet 引入:BootstrapBlazorBootstrapBlazor.FontAwesome(v7.*)
  • wwwroot/index.html 中添加 CSS 引用:<link href="_content/BootstrapBlazor.FontAwesome/css/font-awesome.min.css" rel="stylesheet">
  • Razor 页面中直接使用组件,如 <bbbutton onclick="HandleClick">点我</bbbutton>

自定义主题只需改 wwwroot/css/app.css,或引入 Tailwind、Bulma 等现代 CSS 框架,Blazor 组件自动响应。

基本上就这些。起步不复杂,但容易忽略权限配置和平台初始化细节。只要环境搭好、模板跑通、第一个摄像头按钮点出来,后续加数据库、蓝牙、NFC 就是按模块叠加的事。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Kotlin协程编程与Spring Boot集成实践
Kotlin协程编程与Spring Boot集成实践

本专题围绕 Kotlin 协程机制展开,深入讲解挂起函数、协程作用域、结构化并发与异常处理机制,并结合 Spring Boot 展示协程在后端开发中的实际应用。内容涵盖异步接口设计、数据库调用优化、线程资源管理以及性能调优策略,帮助开发者构建更加简洁高效的 Kotlin 后端服务架构。

121

2026.02.12

pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1938

2024.04.01

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2116

2024.08.01

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

1142

2024.11.28

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

530

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

514

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

658

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

5881

2023.08.17

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

48

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.5万人学习

CSS教程
CSS教程

共754课时 | 38.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号