在Linux上使用Visual Studio开发Uno Platform项目
by liam zheng on 18 August 2020
Uno平台正在支持Linux。Uno允许你从单一代码库使用C#和XAML构建原生的移动,桌面和WebAssembly应用。你可以在WSL上的Ubuntu使用Uno和Visual Studio(VS)来构建Linux应用。与Uno的协作,我们构建了示例snap应用来演示在IoT设备上监测和调节速度。请参考Uno的声明。或者观看文末的视频。
在Ubuntu上使用Uno做开发
为每个平台维护独立的代码库需要大量的时间和工作。为每个平台(Windows,Android,macOS或Ubuntu)构建应用,然后承诺支持和维护使得跨平台开发的艰巨任务。例如功能差异,不兼容和重复工作等问题可能成为常见的做法。
Uno展示了一个解决方案。你可以使用Uno构建C#和XAML代码库,以使其可方便移植。使用WebAssembly,Uno动态地调节你的应用外观和与系统更匹配。你所需要的只是维护一个代码库。
在Visual Studio上构建Linux应用程序的支持由WSL上的Ubuntu和开源的Mono AOT-wasm项目提供支持。Uno也支持在VS code上的WASM开发。在Linux上,Uno平台项目使用Skia渲染引擎和绘制图形元素。Uno应用程序与GTK Shell整合至Ubuntu桌面,全部都是开源软件,在Mono项目上构建。
用snap应用来部署Uno
一旦你有了应用程序,支持和维护将成为一个挑战。就像我们的demo应用,你的IoT设备应用,支持和维护将是安全的关键因素。应用程序或设备的用户应该能够信任开发人员,以使应用程序保持最新和有补丁可用。
不管在Ubuntu还是其他主流发行版上的Snap应用,你都能使用和保持Uno平台项目自动远程地更新和打补丁。你也可以塑造一个发布策略来满足项目或设备需要使用的snap通道。在其他用户使用稳定版时,大胆的用户可以使用你的dege(边缘)版,或者订阅一个鉴于2者的一个中间版本。
构建Uno IoT应用
当你的应用程序在所有操作系统上运行并且易于支持,下一步该怎么办呢?随着你的Uno 平台项目迅速发布,你可以无忧地部署到工作站或服务器。同时,你可以更进一步创建一个基于Ubuntu Core的产品。
Uno和snap2者都可在X86和ARM上运行。因此,开发者可以树莓派为目标,测试IoT应用。Uno平台IoT demo就是一个例子,它可在armhf和amd64上工作。作为一个严格限制的snap,它可使用Ubuntu Core来轻松的部署到生产环境设备上。Ubuntu Core时一个最小,容器化版的Ubuntu。为了安全,其完全由snap应用构成,也拥有和你的应用一样的更新能力。
用Uno和snap来开发项目也给与你访问其他工具和其他现有的Ubuntu Appliances特性。例如,我们的演示版snap用到了Mir来做窗口管理和显示你的Uno平台应用。
下一步
如果你不熟悉Uno平台,我们推荐你阅读Uno Platform的公告。浏览他们的网站和体验我们的演示snap。需要注意的是这是一个简单的演示,展示了可能的情况,我们很高兴看到其他Uno项目在将来能充分利用snap的好处。
如你对Ubuntu Core和snap开发感兴趣,或者在树莓派上构建Uno项目。我们推荐你阅读以下内容:
或者与我们交流你的应用,我们可以帮助你发布,并且你也可以找到其他和你一样的开发者。
订阅博客文章
查看更多内容
什么是 IoT 设备管理?
IoT 设备管理是指用于部署、监控和维护 IoT 设备的流程或实践。随着组织扩大其 IoT 工作,可靠的设备管理方法对于运行安全、简化的设备群至关重要。 全球联网设备的激增(预计 2024 年达到 188 亿台)意味着 IoT 设备管理变得越来越复杂,这一现实并没有被恶意行为者忽视。事实上, 2023 年平均每个组织每周遭受 60 次 IoT 攻击。这是因为设备以及它们之间的连接和您的管理系统构成了一个相当大的攻击面。 在这篇博客中,我们将通过关注您需要实现的 3 个目标来讲解 IoT 设备管理的基础:可见性、互操作性和安全性。我们将介绍开放式设备管理方法如何确保您在任何行业、任何规模的任何设备中实现这三个目标。 可统合并保护您设备的一把伞 您可以将自己的 IoT 管理 […]
Canonical 发布 Ubuntu 24.10 Oracular Oriole
最新版 Ubuntu 具备最先进的内核以及增强的桌面安全性 Canonical 发布 Ubuntu 24.10,代号“Oracular Oriole”,用户可前往下载并安装。 Ubuntu 24.10 具备最新的内核、工具链和 GNOME 47 桌面环境,同时在软件安全性方面进行了重大改进。 “Oracular Oriole 为提供最新的上游内核和工具链设定了新的步伐。”Canonical 首席执行官 Mark Shuttleworth 称,“实验性的新增安全功能表明了我们致力于在未来 20 年甚至更长时间内保持社区互动沟通,不断提升 Linux 桌面体验的决心。” 免费下载 Linux 6.11 提供最新的硬件支持 Ubuntu 24.10 采用了 Linux 6.11 […]
Canonical Anbox Cloud 推出新的开发和测试功能,改善车载信息娱乐
对 AAOS(Android™ 汽车操作系统)的支持改善了测试和无缝可扩展性,使 Android 汽车开发更加容易。 我们很高兴地宣布,Canonical 云中传输应用程序的解决方案 Anbox Cloud 现已适用于 AAOS — Android 汽车操作系统。 AAOS(Android Automotive OS,Android 汽车操作系统)是专门设计的 Android 汽车信息娱乐版本,旨在解决车载信息娱乐操作系统日益增长的挑战和重要性。随着车辆的互联程度越来越高,对用于管理车内娱乐和功能的灵活操作系统的需求持续增长。专为汽车应用定制的 AAOS 提供了支持各种应用、功能和服务的全功能操作系统,同时保持了熟悉的 Android UI 和 UX。这使得原始设备制造 […]