我有一个项目,其中有多个相同的C# / xaml metro应用程序分支。 我有一个平板电脑,在上面测试应用程序,并且通常会在其上进行应用程序包部署,以测试我的最新代码。 出现的问题是我经常有多个相同程序的分支。 我想能够在平板电脑上同时执行它们(进行比较和对比)。 但是当我尝试安装应用时,它说已经安装了该应用,安装失败。 我需要更改哪些设置才能使Windows 8将分支视为单独的应用程序?
<ProjectGuid>{2BC8E996-5E25-4714-9327-930553131C04}</ProjectGuid>
<ProjectGuid>{DFC50C25-399E-437A-B641-E48FEA776EFE}</ProjectGuid>
但是另一个区别就是打包的应用程序必须有所不同 - 在Package.appxmanifest中,我也会得到不同的GUID:
<Identity Name="3b69e4ca-4072-4ec6-8790-4090bf72a8c3"
<Identity Name="2a943b24-68d2-4480-a475-1d606e546672"
company.applicationname
对比
company.applicationname-branch1
company.applicationname-branch2
应该被视为不同的软件包,因此允许您同时安装两个。
>我需要更改分支的哪些设置,以便Windows 8将该分支视为单独的应用程序?
您在AppxManifest.xml中包的名称是关键。使用XPath语言来说,每个/Package/Identity[@Name]只能安装一个包-这是唯一的部分。
[而且Name+Publisher很重要;如果已经安装了Name=X,Publisher=Y,而您尝试安装Name=X,Publisher=Z,则会出现错误]
我相信如果Visual Studio控制名称,它会将“.Debug”和“.Release”附加到名称上,因此您可以F5多个配置。[这有自己的问题,例如如果您使用需要匹配名称的通知...]