Windows Phone 应用程序和多个变体的自动编译过程

Automate compilation process for Windows Phone application and multiple variations

我正在开发多个 Windows Phone 应用程序,它们仅在几个文件的内容上有所不同。应用程序共享相同的逻辑,因此我创建了一个项目和多个文件夹,每个应用程序变体都有一个文件夹,其中包含变体的资产和文件,并将它们移动到单独的位置。为了编译项目,我复制文件并遵循 Visual Studio.

的标准编译过程

现在只有 5 个应用程序变体,目前它是适合的解决方案,但预计数量会增加到 50 个或更多。我想自动化这个过程,我目前的想法是编写一个批处理脚本来从变体文件夹复制文件,覆盖项目文件,用脚本编译应用程序并将 xap 包复制到另一个位置。

我的两个问题是:

  1. 是我的想法很好地解决了问题,还是有更优雅的方式来做到这一点我不知道? (管理和开发多个应用变体)
  2. 如何从 cmd 编译 windows phone 应用程序?

我认为你的问题是有效的。我 运行 过去遇到过类似的需求(只是针对 Windows 8 个商店应用),我所做的是:

创建一个 "core" 项目并将所有共享逻辑移至该项目。然后我创建了一个示例应用程序项目,引用了核心项目并确保示例应用程序按照我想要的方式工作。

最后,我将示例应用程序转换为 Visual Studio 模板。这基本上是获取项目代码并创建一个可以重复使用的 Visual Studio 模板。 阅读更多相关信息 here

需要在模板源代码中完成一些工作,以便将一些动态部分(如应用程序名称)放入代码中的特定位置。例如,您可以通过在 class:

中应用以下代码,将 class 命名空间更改为项目的命名空间
namespace $safeprojectname$

您可以阅读有关模板参数的更多信息here

希望对您有所帮助。

要从命令行编译 windows phone 应用程序或任何 .NET 应用程序,您应该使用

msbuild.exe

。您可以找到更多信息和示例 here.