问题标签 [maui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
274 浏览

c# - VS 2022 和 .NET MAUI 的调试问题

调试应用程序 ANDROID MAUI 无法正常工作。

当我在代码中添加断点并在我的 android 应用程序中运行调试时,我总是得到以下异常:“线程上没有运行兼容的代码”。

我努力了:

  1. 停用热重载
  2. 在选项中禁用“仅调试您的代码”
  3. 重新安装VS 2022
  4. 重新安装 MAUI

但我总是得到同样的错误。

截屏

0 投票
1 回答
321 浏览

.net - 当我检查 MAUI 与 maui-check 的兼容性时,如何确定错误在哪里?

maui-check用来检查 .NET MAUI 的兼容性。即使控制台屏幕显示review the errors and correct,我也没有看到任何错误。

你们能建议我一种方法吗?

环境信息:芯片上macOS Monterey,.M1.NET 6.0 (LTS)

0 投票
0 回答
365 浏览

.net - 具有共享 UI 库和身份验证的 .NET MAUI Blazor

我正在尝试编写一个 .NET MAUI Blazor 应用程序,它与传统的 Blazor 应用程序共享 UI,如https://github.com/danroth27/BlazorWeather的 BlazorWeather 示例所示。

我对这个公式的看法是,我希望能够在我的应用程序中使用身份验证并尽可能多地共享代码。理想情况下,我希望将所有应用程序逻辑放在共享 UI 中(当然,API 也将只适用于 Web 和 MAUI)。

我尝试创建一个非常基本的示例解决方案,以便您了解我的问题。公共存储库应可在https://github.com/Dukenware/OneToRuleThemAll访问

我遵循的步骤:

  1. 我首先创建了一个具有“个人帐户”类型的默认身份验证的 Blazor 服务器。
  2. 测试应用程序是否按预期运行。
  3. 创建了我已添加到解决方案中的 Razor 类库项目。
  4. 将所有逻辑从 BlazorServer 移至 RazorClassLibrary 项目。
  5. 修复了 HTML 样式等,以便应用程序像以前一样运行。
  6. 添加了 MAUI Blazor 项目。
  7. 测试 MAUI 应用程序是否按预期运行。
  8. 引用了 RazorClassLibraryProject。
  9. 尝试通过从 MauiBlazor 的 Main.razor 运行 RazorClassLibrary.App 来显示来自 RazorClassLibrary 的 UI。
  10. 获取身份验证异常:

如果有人能指出我可以用来构建我的应用程序的工作模板,我真的很感激。欢迎任何反馈。

0 投票
0 回答
66 浏览

.net - 使用 SDL2 和 C++ 在单个 HTML 片段中创建 WASM 的模式

我们有一个 .NET Maui App 用例,我们从 Azure 动态加载 WASM,我们希望将以下四个(Emscripten 生成的)文件保存在可以使用自定义组件访问的 tmp 文件夹中,之后我们将处置内容。

此外,我们有一个用例,我们希望将所有相同的资源嵌入到单个 html div 片段中,无论是在 .NET Blazor 应用程序中使用,还是仅由互联网。

这些文件是:

在 Xamarin Forms 中,我们会将这样的动态内容作为字符串加载,尽管我们没有使用 WASM,但我们会定期将所有资产嵌入到 HTML 文件本身中——无论是作为脚本和 CSS,还是在同类的情况下图像,如 Base64 等,然后将字符串直接加载到 WebView。

.NET Maui 中做这种事情的最佳模式是什么?希望不是像 Xamarin Forms 这样的字符串侧加载解决方案,原因是我们想要使用它的自定义组件只是 ListItems 列表中的一个 ListItem。

我已经成功地在 HTML 文件中嵌入了一个 .wasm 文件var bytes = "data:application/wasm;base64,AGFzbQEAAAABBAFgAAADAwIAAAQFAXABAQEFAw ...",这是一个轻而易举的事情,.data 文件似乎更具挑战性,可以说我们可以沿着将所有这些包装在一个 Div 片段中并传递的路径到自定义组件 - 但我想知道是否有另一条路线,我可以将所有四个文件保存到存储中,然后将它们提供给自定义 Blazor 组件?

我欢迎两个方面的答案:

  1. 如何将 WASM 嵌入到 HTML 片段中,以供自定义组件使用,或者确实能够作为 html 片段被推送到网络上的任何网页中;和,
  2. 如何将上面四个 Emscriptem 生成的文件存储在临时位置,以供自定义 Blazor 组件使用。

对于上面的 (1),我在https://yatter.itch.io/sdl2wasm设置了一个基本演示,它由上面列出的四个文件组成,挑战是将所有内容嵌入in a single HTML div到一个 HTML 页面中。该演示的 repo 位于https://github.com/YatterOfficial/WASM.MobileBanner并且任何提示,以完成拉取请求以解决问题,都将受到重视。

路线 (1) 非常具有挑战性,虽然它是我们想要的选择,但路线 (2)(如果可能的话)将使我们能够快速跟踪产品,同时解决路线 1 的所有挑战。

就大局而言,这一挑战背后的原因是,能够在单个片段中使用 WASM 轻松创建横幅广告,这将是革命性的,因为我们曾经在 Flash 中制作横幅,直到插件像已弃用。

在我看来,WASM 革命不会被完全接受,除非我们不仅可以将所有内容嵌入到单个 div 标签中,而且可以将多个 WASM-div 片段嵌入到单个页面中。毫无疑问,在解决了这个问题之后,主题将变为在一个页面中授权多个 WASM-div,从而能够相互交谈。自然,它们不必都是可见组件,每个组件都有自己的画布。

我对此很感兴趣:D

谢谢!

0 投票
1 回答
151 浏览

c# - RadioButtons 是否应该在 VS 2022 Preview 17.1/MAUI preview 10 中工作?

我是 MAUI 的新手,但无法获得一个简单的单选按钮示例(从 Xamarin.Forms 控件库转换)来工作,该项目构建良好,但在运行它时,我得到TypeInitializationException: The type initializer for 'Microsoft.Maui.Controls.RadioButton' threw an exception了一个很长的堆栈跟踪:

它被扔在一个(生成的?)文件MainPage.xaml.sg.cs中的语句global::Microsoft.Maui.Controls.Xaml.Extensions.LoadFromXaml(this, typeof(MainPage));中:

我正在尝试在安装了 Visual Studio 的 Windows 10 系统上运行它。

代码基本上是由 Visual Studio 2022 Preview 17.1 创建的模板,其中 MainPage 的两个文件被编辑如下:

我是在做完全错误的事情,还是当前不支持或损坏该功能“RadioButton”?

0 投票
2 回答
573 浏览

visual-studio-2022 - Maui App 无法使用 Android Simulator 命名空间缺失

我安装了 Visual Studio 2022 Preview 使用 Android 或机器模拟器运行 Maui App 时出现错误。有没有人有同样的问题?

已安装

  • 单项目 MSIX 打包
  • 安卓设备管理器

如果添加命名空间仍然不起作用,则缺少命名空间

错误“严重代码描述项目文件行抑制状态错误 CS0246 找不到类型或命名空间名称‘MauiApp’(您是否缺少 using 指令或程序集引用?) MauiApp37 (net6.0-android)”

如果我包含它,则缺少命名空间仍然无法“使用 Microsoft.Maui.Hosting;”

在此处输入图像描述

第二个错误

严重性代码描述项目文件行抑制状态错误 NU1605 检测到包降级:Microsoft.WindowsAppSDK 从 1.0.0-preview3 到 1.0.0-experimental1。直接从项目中引用包以选择不同的版本。MauiApp37 -> Microsoft.AspNetCore.Components.WebView.Maui 6.0.101-preview.10.2068 -> Microsoft.WindowsAppSDK (>= 1.0.0-preview3) MauiApp37 -> Microsoft.WindowsAppSDK (>= 1.0.0-experimental1) MauiApp37

0 投票
0 回答
264 浏览

.net - 如何从 .NET MAUI Blazor 写入和读取文件?

我正在尝试将音频文件写入 Windows 上的 .NET MAUI Blazor,因此我可以通过 HTML 音频元素通过https: //0.0.0.0/... 播放它。或这样的链接。

如何获取我可以写入的应用程序本地存储路径,它指向该 url?

0 投票
1 回答
132 浏览

c# - MAUI-Android:如何防止 Google 语音识别器超时

我正在试用目前处于预览阶段的 Microsoft .NET MAUI。我尝试制作一个小型 Android 应用程序,该应用程序将使用 Google 语音识别服务作为让用户浏览应用程序的一种方式。只是一个小演示,看看我能用它做什么。这也是我第一次真正编写 Xamarin/MAUI 项目,所以我不太确定我能用这个平台做什么。

问题是我想让这个 Google 服务始终开启(没有超时)或自动关闭,然后在超时时重新打开。简而言之,我希望用户永远不必处理这个屏幕:

在此处输入图像描述

我的意图是,这将是一个后台线程,不断要求用户说出命令,只有在用户说出命令时才停止,并且服务将始终准备好接收语音。但是,我无法保持上述服务始终开启或超时时自动关闭=>重新打开。

我正在四处搜索,似乎我无法更改服务的超时时间,所以唯一的方法是尝试自动关闭=>重新打开服务,但我不知道该怎么做。

以下是我的代码,你能给我一些指导吗?

1.登录页面:只有用户名和密码字段,使用时会被要求说出用户名。如果存在,则要求说出密码。

2. 语音识别器类:

3. 主要活动:

4. 主要应用

0 投票
1 回答
191 浏览

maui - .net maui preview 10 不是单个项目

我尝试安装 Visual Studio 2022 预览版 17.1 并创建新的 .net Maui 项目,但它不是单个项目,当我添加新页面时它仍然是 Xamarin 表单页面并且也有错误 在此处输入图像描述

0 投票
0 回答
221 浏览

blazor - 无法将 BLAZOR-MAUI 桌面部署为 .EXE 程序

我下载了最新的 17.1 预览版并从模板创建了 blazor-maui 应用程序。想从构建中创建单个 exe。所以点击发布并选择目标win-x64。当我尝试发布时出现此错误