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

时间:2015-04-10 13:42:18

标签: batch-file windows-phone-8 visual-studio-2013 cmd windows-phone

我正在开发多个Windows Phone应用程序,这些应用程序仅因多个文件的内容而异。应用程序共享相同的逻辑,因此我创建了一个项目和多个文件夹,每个应用程序变体对应一个变量的资产和文件,并将它们移动到单独的位置。要编译项目,我复制文件并遵循Visual Studio的标准编译过程。

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

我的两个问题是:

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

2 个答案:

答案 0 :(得分:1)

我认为你的问题是有效的。我在过去遇到了类似的要求(仅限于Windows 8商店应用程序),我所做的是以下内容:

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

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

需要在模板源代码中完成一些工作,以便将一些动态部分(如app name)放入代码中的特定位置。例如,您可以通过在tour类中应用以下代码将类命名空间更改为项目的命名空间:

namespace $safeprojectname$

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

希望它有所帮助。

答案 1 :(得分:0)

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

  

msbuild.exe

。您可以找到更多信息和样本here