zoukankan      html  css  js  c++  java
  • 迁移桌面程序到MS Store(1)——通过Visual Studio创建Packaging工程

            之前跑去做了一年多的iOS开发,被XCode恶心得不行。做人呢,最重要的是开心。所以我就炒了公司鱿鱼,挪了个窝回头去做Windows开发了。
            UWP什么的很久没有正儿八经写了,国内的需求非常少。传统的桌面开发倒是因为人越来越少了,需求还在,有少量还不错的职位。现在在做WPF的项目,公司层面倒是很愿意迁移到UWP,但是迁移起来会有很多的困难和限制。同时有这方面热情,且知道怎么去做的人就更少了。
            接下来会通过几个短篇来介绍如何通过Desktop Bridge来迁移桌面程序到MS Store,这块的学习我还没有深入,祈祷一下不会很快就太监了……

            其实如果仅仅是要求把exe打包成appx的话,权限方面并没有什么特殊的要求。但是默认情况下,如果需要提交商店并通过审核的话,应用程序需要能够运行在Windows 10 S模式下。MSDN的原话是
    All apps submitted to the Microsoft Store must be compatible with Windows 10 S. Apps that aren't compatible won't be accepted in the store.
            这个就比较严格了,简单举例如下:

    •     APP不能要求admin权限
    •     APP不能包含Windows Service
    •     APP不能像exe程序那样直接在运行目录写文件
    •     APP不能直接运行另一个exe程序

            以上这些在传统桌面程序中算是常见了,所以只要稍微复杂一点的exe程序,在迁移的时候就会遇到各种各样的问题。
            今天的第一篇我们首先来处理一下最简单的情况,即移植一个标准的,同时符合商店权限要求的WPF程序。
            第一步我们先创建一个空的WPF工程。运行起来是一个空白的窗体。工程文件结构也很简单,见Solution Explorer。

            接下来我们要创建一个Packaging工程来对WPF工程进行打包,最终通过Packaging工程来生成APPX文件。可以在Windows Universal目录下找到Windows Application Packaging Project。

            点击OK创建完成后,记得要在Applications中添加对WPF工程的引用。同时我们还可以看到Images文件夹下对应的图片,是转换完成后的磁贴图标。不更新的话在开始菜单里就是默认的方块叉图标。

            通过Visual Studio添加Packaging工程的优点是,我们可以方便的调试原来的WPF程序。这里我们将启示项目Startup Project设置为SimpleWpfAppPackaging后,按F5运行是可以直接调试SimpleWpfApp工程的。我们可以加个断点试试,体验可以说是无缝链接必须好评了。成功运行程序后,你会在开始菜单中发现SimpleWpfAppPackaging。

            再接着就是创建APPX等文件提交商店了。Packaging工程上通过右键菜单Store -> Create App Packages… 再往后的流程就是和纯的UWP工程一模一样了。

            假设我们给APPX的名字也命名为SimpleWpfAppPackaging,那么我们可以得到以下APPXUPLOAD文件。这个文件就是提交到商店进行审核的最终文件。

            本篇先做了一个最基本的介绍,希望能留下对迁移工程的初步印象,后面我们会接着讨论一般情况下,迁移工作可能会遇到的问题和解决方案。
            本篇相关代码地址:

    https://github.com/manupstairs/DesktopBridgeSamples

  • 相关阅读:
    eclipse修改web项目部署路径
    Jquery面试题
    23中设计模式之单例模式
    详细探讨单例模式
    java常用设计模式
    vue官网总结
    pytorch模型训练加速tricks
    element table显示滚动条
    vue中less文件全局引用
    vue路径别名无法识别,Cannot find module
  • 原文地址:https://www.cnblogs.com/manupstairs/p/9946257.html
Copyright © 2011-2022 走看看