UWP / Visual Studio:如何制作不同的构建变体?

时间:2016-12-02 08:20:35

标签: c# visual-studio build uwp

我需要有三种不同的构建变体(口味)可以并行安装我的UWP应用程序:一个用于生产,一个用于测试,一个用于开发。他们显然需要共享相同的代码库,但具有不同的常量,如后端URL和API密钥。

在Android Studio中,这可以使用“构建变体”来完成,而在Xcode中,这可以使用“方案”来完成。什么是Visual Studio相当于那些?

使用配置管理器可能“构建配置”,如https://msdn.microsoft.com/en-us/library/kwybya3w.aspx中所述。默认情况下,我有一个Debug和Release配置。将它们重命名为Production-Debug和Production-Release,然后创建Testing-Debug,Testing-Release,Development-Debug和Development-Release是否正确?我不明白的是:

  1. 这是否允许我在同一设备上并行安装生产,测试和开发?
  2. 我如何知道我在代码中运行的风格(为了获得不同的属性,常量)?
  3. 编辑:这是关于UWP应用,而不是关于网络应用。

3 个答案:

答案 0 :(得分:2)

你可以使用这样的条件:

<AppxManifest Include="Manifest.Debug.xml"
              Condition="'$(Configuration)'=='Debug'">
  <SubType>Designer</SubType>
</AppxManifest>
<AppxManifest Include="Package.appxmanifest"
              Condition="'$(Configuration)'=='Release'">
  <SubType>Designer</SubType>
</AppxManifest>

答案 1 :(得分:1)

双击项目中的Package.appxmanifest文件。

选择包装标签,并为不同的案例输入不同的包名称。

存储每个变体。

您的电脑会认为这些是不同的UWP应用程序。

答案 2 :(得分:0)

我使用本指南找到了解决方案:http://grogansoft.com/blog/?p=1087

我基本上最终得到了一个appxmanifest(重命名为appxmanifest2,因为每个项目只能有一个appxmanifest)每个构建配置,然后是构建事件&#34; pre-build event命令行&#34;我将我需要的那个复制到项目根目录中。

对于常数,我使用预处理器条件编译符号。