微软的 Project Reunion 究竟是什么?-冯金伟博客园

  在上个月的 Build 2020 大会中,微软宣布了 Project Reunion,并大致介绍它可以用来构建统一的 Windows 应用程序,能够更好地打破 Win32(即 Windows API)和通用 Windows 平台(UWP)API 之间的障碍。

  但很多开发者不清楚它的功能究竟有哪些、能够用来干些什么。于是,微软最近又更新了一份文档,对 Project Reunion 进行了更为详细的介绍。

微软的 Project Reunion 究竟是什么?-冯金伟博客园

  根据微软的最近介绍,“Project Reunion 是一组库、框架、组件和工具,你可以在应用程序中使用它们,以从各种应用程序中体验到强大的 Windows 平台功能。Project Reunion 结合了 Win32 本机应用程序的功能和现代 API 使用技术,因此这些应用程序可适用于不同 Windows 平台。”

  由此看来,开发者若想将自己的应用发布至不同 Windows 平台,通过 Project Reunion,就无需进行重写。Project Reunion 可自动适应首选应用程序模型和部署机制。

  Project Reunion 的功能分为三个主要类别——新 API、聚合 API 和 API 子集。开发者可以按照自己的需求使用每种不同级别的功能。

  目前,Project Reunion 中已有的组件包括:

  • WinUI 3 for XAML 利用 XAML 的功能,可以帮助开发者为各种应用程序构建流畅的 UX。
  • C++/WinRT、RUST/WinRT 和 C#/WinRT 提供自定义类型的语言本地投影,方便 C++/Rust/C# 开发人员调用 Windows API,更轻松地使用自己熟悉的语言构建各类 Windows 应用和组件。
  • MSIX-Core 用于打包应用程序,以通过商店或自己的交付管道分发到 Windows 桌面计算机。 

  微软表示,还有更多的组件在计划中,例如:

  • 支持 Edge/Chromium 的 WebView2,带来了一次用 HTML+JS 编写应用程序并在所有平台上重复使用的便利。
  • Modern Lifecycle helpers 能够使应用程序对功耗更加敏感,并对运行时系统的功耗管理和用户状态的变化做出反应。
  • Startup Tasks 可让应用程序在不过度使用资源的情况下开始工作,或准备快速使用时活跃起来。
  • Update Scan Integration 有助于在与其他系统维护任务同时执行的同时,使应用程序自动保持最新。

  随着 Project Reunion 的发展,它提供的功能将不仅限于合并现有的 Win32 和 UWP 模型,而是将为所有应用程序提供附加功能以供使用。

  Project Reunion 是完全开源的,微软表示,希望依靠社区的力量来为它提供更好的发展。