none
Cannot publish distinct packages for Windows 10 and Windows 10 Mobile

    Question

  • I'm trying to publish 2 Windows 10 UWP packages for the same application:

    - one with TargetDeviceFamily=Windows.Desktop and x86|x64 architecture support

    - another with TargetDeviceFamily=Windows.Mobile and ARM architecture support

    Implementation is different on some parts (especially the Windows.Mobile package includes a C++ library which is not necessary on Windows.Desktop), that's why I need to publish 2 different packages for the same app and the same version.

    The store gives me an error after package upload : "Appx packages (including previously published and currently uploaded) must be uniquely identified by their full names. You have provided two packages with the full name ......... which have different contents. Please remove one of these packages, or increment current package versions to continue."

    I don't see any conflict since CPU architecture and TargetDeviceFamily are not the same.

    Why such an error ? 

    Tuesday, September 29, 2015 9:50 AM

All replies

  • Hi,
    sorry for this late answer, I suppose it is useful in any case trying to answer you.

    The problem may be in the Universal Windows Store concept. You can package for the Universal Store your application, specifying all the architectures which are currently supported, using this simple procedure:

    https://msdn.microsoft.com/en-us/library/hh454036.aspx

    In any case, to use a particular library, which should be included in the final package anyway, only in the mobile context, you can try following these very simple steps:

    https://msdn.microsoft.com/library/windows/apps/dn894631.aspx

    In particolare I am referencing to the "IsTypePresent" / "IsAPIPresent" / "IsEventPresent" etc. Universal API to distinguish between the different ecosystems your application will run within. So in the Universal Windows Store you will find a unified store and a very one packaging procedure, while on developer side there is the only difference on code side.

    I hope it is useful for your problem.
    Alessio

    Wednesday, October 21, 2015 12:38 PM