标签: uno-platform

MAUI和Uno平台有什么区别?

我有点困惑。任何人都可以确切地解释两者之间的区别是什么?我们什么时候应该使用 MAUI,什么时候使用 UNO?正如我意识到的,两者都可以运行在不同的平台上,那么同时引入两种不同的技术的原因是什么?它们可以在 Windows 7 上运行吗?或者它们仅限于 Windows 10?我的 WPF 程序可以使用这两种技术在 Linux 上运行吗?

.net xaml uwp uno-platform maui

15
推荐指数
2
解决办法
4686
查看次数

如何在 WebAssembly 中为 Uno 平台启用深度链接

在 Uno Platform for WebAssembly 中实现 URL 深度链接的任何线索或方向?

我看到它是在以下项目中实现的,这些项目可以在https://platform.uno/showcases/上找到

项目:

webassembly uno-platform

8
推荐指数
1
解决办法
224
查看次数

可以从编译为wasm的C#中调用C ++吗?

有谁知道当前是否可以从编译成wasm的C#中调用C ++(或者更精确地说是Uno Platform应用程序)?

我对WebAssembly相当陌生,但是我设法将C ++函数编译为wasm并从JavaScript调用它。我还从Uno获得了一个快速入门项目(该项目可让您将用C#/ XAML编写的UWP应用编译为wasm并在浏览器中运行)。

我每天都用C#和C ++编写程序,但是我不知道是“两种语言之间的互操作” + WebAssembly组合。我假设我需要将两种语言的代码编译为2个单独的wasm文件,然后以某种方式将它们链接在一起或在运行时加载C ++。今天我什至想做些什么吗?

编辑:要明确:的想法是所有代码最终都将编译为wasm。

c# c++ webassembly uno-platform

7
推荐指数
1
解决办法
252
查看次数

在platform.uno项目中引用.netstandard2_0项目

重现:

下载https://github.com/nventive/Uno.QuickStart

添加名为TestMe的.NETStandard2_0项目.

在MyApp.Droid项目中引用TestMe.

构建MyApp.Droid会带来编译错误:

System.InvalidOperationException:项目TestMe未提供任何元数据引用.这可能是由于路径无效,例如在csproj中使用$(SolutionDir); 尝试使用相对路径.这也可能与缺少的默认配置指令有关.有关更多详细信息,请参阅Uno.SourceGenerator Readme.md文件.at Uno.SourceGeneration.Host.SourceGeneratorHost.d__4.MoveNext()in C:\ projects\uno-sourcegeneration\src\Uno.SourceGenerationHost.Shared\SourceGeneratorHost.cs:line 303 MyApp.Droid

我已经尝试将TestMe.csproj更改为

<TargetFrameworks>net461;netstandard2.0</TargetFrameworks>
Run Code Online (Sandbox Code Playgroud)

要么

<TargetFrameworks>net47;netstandard2.0</TargetFrameworks>
Run Code Online (Sandbox Code Playgroud)

没有成功.

这个问题有解决方法吗?

c# uwp uno-platform

6
推荐指数
1
解决办法
308
查看次数

Uno Platform - WASM - 有没有办法读取浏览器的地址栏/与之交互?

总的来说,我对 Uno Platform 和 WebAsssembly 很陌生,但认为它有巨大的潜力!

有没有办法从 WebAssembly 中运行的 Uno Platform 应用程序读取浏览器的地址栏并与之交互(类似于 HTML5 的history对象?)。我见过的例子并没有这样做。

例如:用户输入:http://myUnoApp.com/home 我可以阅读该/home部分吗?或者,如果他转到我的应用程序的“主页”页面,我可以将浏览器的地址栏设置为吗http://myUnoApp.com/home?我可以读取历史记录,这样如果他按下浏览器的后退按钮,我的应用程序就知道去哪里吗?

webassembly uwp uno-platform

6
推荐指数
1
解决办法
344
查看次数

“页面”类型不支持直接内容

我从模板创建了新的 Uno Cross-Platform App 2.2。当我在代码视图中打开 Shared->MainPage.xaml 时没有打开设计器,出现下划线错误The type 'page' does not support direct content

<Page
    x:Class="App6.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App6"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <TextBlock Text="Hello, world!" Margin="20" FontSize="30" />
    </Grid>
</Page>
Run Code Online (Sandbox Code Playgroud)

uno-platform

6
推荐指数
1
解决办法
1837
查看次数

用于 WPF 迁移的 Uno 平台与 Blazor 和 MAUI

我今天偶然发现了 Uno,我一直在试图弄清楚这个平台是否更能满足我们的需求。我们有一个 WPF 应用程序,我们想要制作一个 Web 版本,并使用 Blazor WASM,我们能够展示如何重用我们拥有的大多数 C# 业务逻辑并用 HTML/CSS 替换 XAML。我们的应用程序需要连接到通过 Rest API 为其提供数据的外部硬件(同时也是 WASM 的 Web 服务器)。如果我们将来需要本机访问,它还将使我们能够使用多平台。距离午夜还有 2 分钟,随着 Dotnet 6 的发布,我即将开始向 HTML/CSS 过渡。

从今天早上开始,我一直在想知道 Uno 是否允许我们保留我们拥有的大部分 WPF?有多少 WPF XAML 可以重用?全部、部分、没有?在过渡过程中我们是否会失去组件设计的 CSS 灵活性?Uno 能否将运行时生成的 XAML 元素处理为 WASM?Blazor WASM 可以在 MAUI 中与 Webview2 一起重用,原生应用程序的 Uno 版本是更好的选择吗?UWP 是一个可靠的途径吗?作为一个框架,我的意思是它似乎是 Uno 的基础?看起来 MAUI 和 Uno 正在走平行的道路,是否有潜在的合并或其中一个消亡?

希望有人可以帮助更好地理解其中的区别。我很感激任何反馈:)。

uno-platform blazor-webassembly

6
推荐指数
0
解决办法
1542
查看次数

WebAssembly 的 UNO 框架中的 WebView 所需的解决方法

目前,我正在开发一个 UNO 平台应用程序,它应该以 .html 格式显示动态创建的 HTML 代码WebView。这在 UWP 和 Android 上运行良好,但在编译的WebAssembly. 我可以在这里使用某种解决方法吗?我想到了一个简单的IFRAME,但显然不可能在 XAML 文件中包含 HTML。还是我错了?

更具体地说:WebView 的NavigateToString("<html><head></head><body>BLAH!</body><html>")方法会在 UWP 和 Android(iOS 未测试)中产生所需的结果。

c# webview webassembly uno-platform

5
推荐指数
2
解决办法
933
查看次数

在 Linux 上运行 uno WebAssembly 时出现 SecurityException“ECall 方法必须打包到系统模块中”

在我们的设置中,我们在嵌入式 Linux 目标上运行 .net 5 应用程序。将来我们可能想在 Windows 系统上运行它。对于用户界面,我们正在评估 uno 平台。因为我们希望用户界面可以远程使用,所以我尝试在目标上运行 uno web assembly。

我已经在 VS Code 中创建了项目,如https://platform.uno/docs/articles/get-started-vscode.html中所述。该应用程序按照网站上的描述在本地运行。Program.cs 是

using System;
using Windows.UI.Xaml;

namespace Terminal.Uno.Wasm
{
    public class Program
    {
        private static App _app;

        static int Main(string[] args)
        {
            Windows.UI.Xaml.Application.Start(_ => _app = new App());

            return 0;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经更新了用于远程部署和调试的 json 文件。这有效,应用程序启动并且调试器将自身定位在入口点上。

一旦我执行 Main 的第一行,我就会得到异常

Unhandled exception. System.Security.SecurityException: ECall methods must be packaged into a system module.
   at WebAssembly.Runtime.NetCoreInvokeJS(String str, Int32& exceptionResult)
   at WebAssembly.Runtime.InvokeJS(String str)
   at Uno.Foundation.WebAssemblyRuntime.InnerInvokeJS(String str) …
Run Code Online (Sandbox Code Playgroud)

webassembly uno-platform

5
推荐指数
0
解决办法
712
查看次数

令人失望的第一次 UNO 经历。只有 WASM 有效

我已经度过了周末,但仍然无法让“Hello, World”工作。视觉工作室:

2022 Version 17.0.4
2022 Preview Version 17.1.0 Preview 1.1
Run Code Online (Sandbox Code Playgroud)

uno-check 说一切都很好: 在此输入图像描述

这是我的运行时间: 在此输入图像描述

WUX 或 MUX(UWP 或桌面)风格的 WinUI 都不起作用。Android 模拟器即将推出,但 Hello World 未部署。已检测到本地 Android 设备,但未部署。Linux (Skia.GTK) 不工作。

WASM 能够显示文本“Hello, World”。

哇!看完最近的版本 4 发布发布会的每一分钟,我都感到很兴奋。但如果让事情运行起来就这么困难……?

我决心让它发挥作用……但这似乎是一个主要的、没有成效的项目。世界上只有我一个人有困难吗?

标记

uno uno-platform

5
推荐指数
1
解决办法
572
查看次数

标签 统计

uno-platform ×10

webassembly ×5

c# ×3

uwp ×3

.net ×1

blazor-webassembly ×1

c++ ×1

maui ×1

uno ×1

webview ×1

xaml ×1