Windows 商店指南
Microsoft ,使开发人员能够使用新应用程序模型中的一些好东西。 本指南解释了如何使用它 - 以及 Electron AppX 包的功能和限制。
Windows 10 的 “周年更新” 能够运行 win32 .exe
程序并且它们的虚拟化文件系统和注册表跟随一起启动。 两者都是通过在 Windows 容器中运行应用程序和安装器编译后创建的,允许 Windows 在安装过程中正确识别操作系统进行了哪些修改。 将可执行文件和虚拟文件系统与虚拟注册表配对, 允许 Windows 启用一键安装和卸载。
此外,exe 在 appx 模型内启动 - 这意味着它可以使用通用 Windows 平台可用的许多 API。 为了获得更多的功能,Electron 应用程序可以与一个看不见的 UWP 后台任务配合使用,它与 exe
一起启动,作为后台运行任务的接收器,接收推送通知或与其他 UWP 应用程序通信 。
要编译任何现有的 Electron 应用程序,请确保满足以下要求:
- Windows 10及周年更新 (2016年8月2日发布的)
- 最新的 Node 4 (运行
node -v
来确认)
然后, 安装 electron-windows-store
CLI:
结构输出应该看起来大致像这样:
从提权的 PowerShell(用管理员身份运行它) 中, 以所需的参数运行 ,传递输入和输出目录,应用程序的名称和版本,以及确认 node_modules
应该是扁平的。
一旦执行,工具就开始工作:它接受您的 Electron 应用程序作为输入,展平 node_modules
。 然后,它将应用程序归档为 app.zip
。 使用安装程序和 Windows 容器,该工具创建一个“扩展的” AppX 包 - 包括 Windows 应用程序清单 (AppXManifest.xml
)以及虚拟文件系统和输出文件夹中的虚拟注册表。
当创建扩展的 AppX 文件后,该工具使用 Windows App Packager(MakeAppx.exe
)将磁盘上的这些文件创建为单文件 AppX 包。 最后,该工具可用于在计算机上创建可信证书,以签署新的 AppX 包。 使用签名的 AppX 软件包,CLI也可以自动在您的计算机上安装软件包。
为了运行您的软件包,您的用户将需要将 Windows 10 安装“周年纪念更新” - 有关如何更新Windows的详细信息可以在这里找到
另一个重要的限制是编译的 AppX 包仍然包含一个 win32 可执行文件,因此不会在 Xbox,HoloLens 或 Phones 中运行。
您可以将 Electron 应用程序与不可见的 UWP 后台任务配对,以充分利用 Windows 10 功能,如推送通知,Cortana 集成或活动磁贴。
如何使用 Electron 应用程序通过后台任务发送 Toast 通知和活动磁贴, 请.
要生成 AppX 包, CLI 使用的模板应该适用于大多数 Electron 应用程序。 但是,如果您使用自定义安装程序,或者您遇到生成的包的任何问题,您可以尝试使用 Windows 容器编译创建包 - 在该模式下,CLI 将在空 Windows 容器中安装和运行应用程序,以确定应用程序正在对操作系统进行哪些修改。
在第一次运行 CLI 之前,您必须安装 “Windows Desktop App Converter” 。 这将需要几分钟,但不要担心 - 你只需要这样做一次。 从这里下载 Desktop App Converter 您将得到两个文件: DesktopAppConverter.zip
和 BaseImage-14316.wim
.
- 解压
DesktopAppConverter.zip
. 打开提权的 PowerShell (用”以管理员权限运行”打开, 确保您的系统执行策略允许我们通过调用Set-ExecutionPolicy bypass
来运行我们想要运行的一切). - 然后, 通过调用
.\DesktopAppConverter.ps1 -Setup -BaseImage .\BaseImage-14316.wim
, 运行 Desktop App Converter 安装,并传递 Windows 基本映像的位置 (下载的BaseImage-14316.wim
).