首页 > 解决方案 > 在 Xamarin UWP 中的 Package.appxmanifest 中更改版本

问题描述

我想更改Identity Version下面代码中的值

    <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
         xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
         xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" >
<Identity Name="Sample.Product " Publisher="CN=1234" Version="1.0.0.0" />
<mp:PhoneIdentity PhoneProductId="456" PhonePublisherId="0" />
</Package>

我尝试使用以下 XmlPoke 代码进行更改。

    <XmlPoke XmlInputPath="Package.appxmanifest" Namespaces="&lt;Namespace Prefix='n' Uri='http://schemas.microsoft.com/developer/vsx-schema/2011' Name='N' /&gt;" Query="/n:Package/n:Identity/@Version" Value="$(Version)" />

该行不会更改版本。

上面的代码出了什么问题?

标签: xamarinversioningxamarin.uwp

解决方案


您正在寻找的身份位于 Package 的默认命名空间中,因此在您的 XmlPoke 中,您需要使用该命名空间。为此,请将 XmlPoke 的 URI 更改为http://schemas.microsoft.com/appx/manifest/foundation/windows10,如下所示:

    <XmlPoke XmlInputPath="Package.appxmanifest" Namespaces="&lt;Namespace Prefix='n' Uri='http://schemas.microsoft.com/appx/manifest/foundation/windows10' /&gt;" Query="/n:Package/n:Identity/@Version" Value="$(Version)" />

推荐阅读