Software Archive
Read-only legacy content

Publish Error: Architecture = neutral - Windows 10 UAP

Simon
Beginner
1,506 Views

Hey Guys,

I have problems with publishing my apps to the Microsoft Strore.

When I build any app for the Windows 10 UAP Platform (Intel XDK version: 3641; Cordova: 6.2, 5.4.1) the zip file includes 3 versions: arm, x64, x86.

Trying to upload the 3 .appxupload files to the store, I get an error like "You tried to upload multiple files withe the same name („PFN=myAppID,ResourceId=~,Version=1.0.0.0,Architecture=Neutral“), but different contents. Delete a package or increase the version number."

I guess, the problem is the "Architecture=neutral" part. But I couldn't find any possibility to change this setting.

Could you please explain me how to solve this? Or fix it, if it's a bug?

With kind regards

Simon

0 Kudos
1 Solution
Jerroyd_M_Intel
Employee
1,506 Views

Hi Simon,

I've figured out the source of your problem, and you're not going to like it. Microsoft has been updating their Dev Center steadily for the past 12 months, and they've changed their app package validation logic, such that you cannot submit the same appxupload with these 3 pieces of information (pkg name, pkg version, architecture) being the same, despite the architecture is defined in the appx file inside of the appxupload.

Here's another example of another user experiencing the error trying to submit Windows 8 and Windows 10 packages: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/180a326d-afa3-4c44-99de-5b2016a2835c/closed-cant-publish-packages-must-be-uniquely-identified-by-their-full-names?forum=windowsstore

Luckily, I've found a workaround until we patch the build system that will allow you to submit for all 3 architectures. Perform the build 3 times, each build having a different version number. Then upload different architectures with different versions.

microsoft-dev-center-three-appxupload-workaround-example.png

In this example, I've built v1.4.0.0, and submitted ARM from this build. Then, I built v1.4.1.0, and submitted x86 from this build. Finally, I built v1.4.2.0, and submitted x64 from this build. Note that for Windows 10, keep the last number zero (X.X.X.0). Microsoft only inspects the first 3 numbers, unless the Dev Center has changed this too!)

I'll also file a bug in our internal bug tracker.

--Jerroyd

 

 

View solution in original post

0 Kudos
7 Replies
PaulF_IntelCorp
Employee
1,506 Views

I've asked one of my colleagues to get back to you.

0 Kudos
Jerroyd_M_Intel
Employee
1,506 Views

Hi Simon,

What Cordova version are you using? What plugins are you using? What changes in the projects settings have you made? Are you adding any capabilities? Can you provide your compile log so I can inspect it?

0 Kudos
Simon
Beginner
1,506 Views

Hey Jerroyd,

I tried with cordova versions 5.4.1 and 6.2.0.

I could reproduce the same problem, starting with the blank html5 template without using any plugins.

I attached the build log for the blank template.

Thanks in advance!

 

0 Kudos
Jerroyd_M_Intel
Employee
1,506 Views

Hi Simon,

I tried reproducing the error with cordova 6.2.0, and the Microsoft Store accepted my submission. Is this a new application to the Microsoft Store or are you trying to update an existing application?

Can you take a screen shot of the Microsoft Store page with the error message and share it here?

0 Kudos
Simon
Beginner
1,506 Views

Hi Jerroyd,

the error occurs, when I try to upload all 3 packages (arm, x86 & x64). It accepted the upload when I'm uploading just one package - but then my app wouldn't work on all devices, I guess.

I think the problem is, that the files have the attribute "Architecture=neutral" instead of "Architecture=x64", etc (see Screenshot: details.png)

0 Kudos
Jerroyd_M_Intel
Employee
1,507 Views

Hi Simon,

I've figured out the source of your problem, and you're not going to like it. Microsoft has been updating their Dev Center steadily for the past 12 months, and they've changed their app package validation logic, such that you cannot submit the same appxupload with these 3 pieces of information (pkg name, pkg version, architecture) being the same, despite the architecture is defined in the appx file inside of the appxupload.

Here's another example of another user experiencing the error trying to submit Windows 8 and Windows 10 packages: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/180a326d-afa3-4c44-99de-5b2016a2835c/closed-cant-publish-packages-must-be-uniquely-identified-by-their-full-names?forum=windowsstore

Luckily, I've found a workaround until we patch the build system that will allow you to submit for all 3 architectures. Perform the build 3 times, each build having a different version number. Then upload different architectures with different versions.

microsoft-dev-center-three-appxupload-workaround-example.png

In this example, I've built v1.4.0.0, and submitted ARM from this build. Then, I built v1.4.1.0, and submitted x86 from this build. Finally, I built v1.4.2.0, and submitted x64 from this build. Note that for Windows 10, keep the last number zero (X.X.X.0). Microsoft only inspects the first 3 numbers, unless the Dev Center has changed this too!)

I'll also file a bug in our internal bug tracker.

--Jerroyd

 

 

0 Kudos
Simon
Beginner
1,506 Views

Hey Jerroyd,

Thank you very much for your efforts.

I'll use your workaround, if I can't wait for the build system patch.

0 Kudos
Reply