[ 
https://issues.apache.org/jira/browse/CB-9856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15098677#comment-15098677
 ] 

Sarangan Rajamanickam edited comment on CB-9856 at 1/14/16 11:06 PM:
---------------------------------------------------------------------

Let me take a sample AppxManifest.xml, so it would be easier to explain:

{panel:title=AppxManifest.xml"}
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest"; ......>
<Identity Name="io.cordova.myappedf373" *Publisher="CN=mycompany.com"* 
Version="1.0.0.0" ProcessorArchitecture="neutral" />
  <Properties>
    <DisplayName>Saran Test Display</DisplayName>
    *<PublisherDisplayName>Sarangan Rajamanickam</PublisherDisplayName>*
    <Logo>images\StoreLogo.png</Logo>
  </Properties>
.......
</Package>
{panel}

Here there are 2 items of interest:
# Publisher (Attribute of the Identity Tag)
# PublisherDisplayName Tag

Now, let us look into where these elements get their values from:

- Here the publisher attribute (from Identity Tag) is populated from the 
Certificate associated. This is the default behavior of the Windows 
Development, even without Cordova. For example, on Native Windows App 
Development, if there are different values for the Publisher attribute in the 
certificate and Package.appxmanifest, the value from the certificate will take 
precedence and be used. (while creating the AppxManifest.xml) 

- The second item PublisherDisplayName tag also gets its value from the 
config.xml file's *author* tag. So, to display like above, I have the following 
declared in my code:
{panel:title=config.xml}
<author href="http://cordova.io"; email="[email protected]">Sarangan 
Rajamanickam</author>
{panel}

So, in order for the configuration values - Usage of Publisher Id from the 
Certificate is the default behavior of Windows development (even without 
cordova). The PublisherDisplayName value is read from the config.xml file and 
are working fine. 

*P.S: So, where is the publisherid from build.json is used?*
Refer the package.windows.appxmanifest.xml. There, the publisher attribute of 
the identity tag will match with the value provided in build.json. 



was (Author: sarangan12):
Let me take a sample AppxManifest.xml, so it would be easier to explain:

{panel:title=AppxManifest.xml"}
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest"; ......>
<Identity Name="io.cordova.myappedf373" *Publisher="CN=mycompany.com"* 
Version="1.0.0.0" ProcessorArchitecture="neutral" />
  <Properties>
    *<DisplayName>Saran Test Display</DisplayName>*
    *<PublisherDisplayName>Sarangan Rajamanickam</PublisherDisplayName>*
    <Logo>images\StoreLogo.png</Logo>
  </Properties>
.......
</Package>
{panel}

Here there are 3 items of interest:
# Publisher (Attribute of the Identity Tag)
# DisplayName Tag
# PublisherDisplayName Tag

Now, let us look into where these elements get their values from:

- Here the publisher attribute (from Identity Tag) is populated from the 
Certificate associated. This is the default behavior of the Windows 
Development, even without Cordova. For example, on Native Windows App 
Development, if there are different values for the Publisher attribute in the 
certificate and Package.appxmanifest, the value from the certificate will take 
precedence and be used. (while creating the AppxManifest.xml) 

- The second item DisplayName tag gets its value from the config.xml file's 
*vs:name* tag. So, to display like above, I have the following declared in my 
code:
{panel:title=config.xml}
........
<vs:platformSpecificValues>
    <vs:platformSpecificWidget platformName="windows">
      <vs:name>Saran Test Display</vs:name>      
    </vs:platformSpecificWidget>
  </vs:platformSpecificValues>
..........
{panel}

- The third item PublisherDisplayName tag also gets its value from the 
config.xml file's *author* tag. So, to display like above, I have the following 
declared in my code:
{panel:title=config.xml}
<author href="http://cordova.io"; email="[email protected]">Sarangan 
Rajamanickam</author>
{panel}

So, in order for the configuration values - Usage of Publisher Id from the 
Certificate is the default behavior of Windows development (even without 
cordova). The Display Name and PublisherDisplayName values are read from the 
config.xml file and are working fine. 

*P.S: So, where is the publisherid from build.json is used?*
Refer the package.windows.appxmanifest.xml. There, the publisher attribute of 
the identity tag will match with the value provided in build.json. 


> publisherId is ignored
> ----------------------
>
>                 Key: CB-9856
>                 URL: https://issues.apache.org/jira/browse/CB-9856
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Windows
>            Reporter: Philipp Kursawe
>            Assignee: Sarangan Rajamanickam
>
> The is really no way to set the manifests `Publisher` to the value specified 
> in `publisherId` because the certificate associated with the project will 
> always take precedence during build and override any value of `publisherId` 
> with the CommonName from the certificate.
> I had to find that out the hard way today. Nothing I specified in 
> `publisherId` could get rid of "The Cordova Team" in the `Publisher` 
> attribute of the `AppxManifest.xml`. I searched the whole day through the 
> source code for that string, but it was nowhere to be found. That's because 
> its in the default apps signing certificate.
> What was the original intent of that config value? Did it ever work like 
> described in the docs?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to