locked
IPC between multiple apps in same package

    Question

  • I was reading in another thread only way multiple Store applications can communicate with each other is the apps are deployed in a single AppX package. I have some questions regarding this.

    1. Does anyone have any detailed samples on how to create this multi-application package?
    2. Is this type of package Store certifiable? There appears to be some question about this?
    3. Is each application in the package able to gets its own tile on the start menu?
    4. What are the IPC API's that are available to this multi-app package solution?

    Thank You,

    Raul

    Friday, February 01, 2013 8:44 PM

Answers

  • Hi Raul,

    1. I'm not aware of any samples which do this. Visual Studio doesn't support creating multi-application packages, so you will need to set up the project yourself.

    2. No. From the Applications manifest node documentation:

    You can use the Applications element to specify one or more apps for the package. Note that although each package can contain one or more apps, packages that contain multiple apps won't pass the Windows Store certification process.

    3. Each Application gets its own tile.

    4. This doesn't change the API available to Windows Store apps can be used, but since the applications are both in the same security context calls which would have failed will succeed. For example, socket calls will succeed even without a loopback exception. Since there aren't any process creation API available, the one app cannot directly launch another app from the package.

    Typically apps in a package would share their application data rather than communicate directly with each other.

    --Rob

    • Proposed as answer by Jesse Jiang Monday, February 04, 2013 3:02 AM
    • Marked as answer by RIP27 Monday, February 04, 2013 3:42 PM
    • Unmarked as answer by RIP27 Tuesday, February 05, 2013 3:22 PM
    • Marked as answer by Jesse Jiang Friday, February 08, 2013 2:13 AM
    Saturday, February 02, 2013 5:27 AM
    Owner
  • Hi Raul,

    Please see the previous quote from the certification guidelines:

    packages that contain multiple apps won't pass the Windows Store certification process.

    You cannot deliver a multi-app package through the store since the store requires the package pass certification. If you are writing enterprise apps then you can side-load multi-app packages.

    --Rob

    • Marked as answer by Jesse Jiang Friday, February 08, 2013 2:13 AM
    Wednesday, February 06, 2013 7:50 AM
    Owner

All replies

  • Hi Raul,

    1. I'm not aware of any samples which do this. Visual Studio doesn't support creating multi-application packages, so you will need to set up the project yourself.

    2. No. From the Applications manifest node documentation:

    You can use the Applications element to specify one or more apps for the package. Note that although each package can contain one or more apps, packages that contain multiple apps won't pass the Windows Store certification process.

    3. Each Application gets its own tile.

    4. This doesn't change the API available to Windows Store apps can be used, but since the applications are both in the same security context calls which would have failed will succeed. For example, socket calls will succeed even without a loopback exception. Since there aren't any process creation API available, the one app cannot directly launch another app from the package.

    Typically apps in a package would share their application data rather than communicate directly with each other.

    --Rob

    • Proposed as answer by Jesse Jiang Monday, February 04, 2013 3:02 AM
    • Marked as answer by RIP27 Monday, February 04, 2013 3:42 PM
    • Unmarked as answer by RIP27 Tuesday, February 05, 2013 3:22 PM
    • Marked as answer by Jesse Jiang Friday, February 08, 2013 2:13 AM
    Saturday, February 02, 2013 5:27 AM
    Owner
  • One more question after some more research on this topic.

    The Microsoft Productivity Pack (Mail, Calendar, People, Messaging Applications) appears to be a single package that is updated as unit but delivers multiple applications. Are developers not allowed to deliver applications in same format?

    Thank You,

    Raul

    Tuesday, February 05, 2013 3:26 PM
  •       What's the definition of an "application"? For example, I have a normal store app, and can I add a .exe file in to this package and publish through windows store? Need this be validated? I would expect that there are some formal document about this...

    Wednesday, February 06, 2013 6:09 AM
  • Hi Raul,

    Please see the previous quote from the certification guidelines:

    packages that contain multiple apps won't pass the Windows Store certification process.

    You cannot deliver a multi-app package through the store since the store requires the package pass certification. If you are writing enterprise apps then you can side-load multi-app packages.

    --Rob

    • Marked as answer by Jesse Jiang Friday, February 08, 2013 2:13 AM
    Wednesday, February 06, 2013 7:50 AM
    Owner
  • The app is a Windows Store app. You cannot add an arbitrary .exe to the package. Everything in the package must pass certification before it can be deployed to the store.

    --Rob

    Wednesday, February 06, 2013 7:52 AM
    Owner