UWP App Installs from Web via App Installer


We have introduced App Installer in the Windows 10 Anniversary Update to make installation of universal windows apps simple to install. With the App Installer, a user just has to double-click the app package to install.

Since the introduction of App Installer, we are heartened by the positive feedback that we received. So we are excited to announce the ability to directly install from web, to install related sets and the ability to auto-update apps with Windows 10 Fall Creators Update.

Direct Web Install

Typically, an app package needs to be locally available on device before it can be installed with the App Installer. For the web scenario, this means that the user must download the app package from the web server, after which it can be installed with App Installer. In the case of an app bundle where the package can contain the resources for all languages and assets for different scale factors, having to download it would waste a lot of disk space and time, which is why App Installer now has built features to streamline this process.

App Installer can install an app directly from a web server. When the user clicks on an app package hosted web link, App Installer is invoked automatically. The user is then taken to the app info view in App Installer and is then one click away from engaging directly with the app.

The direct app install is only available in the Windows 10 Fall Creators Update and newer. Previous versions of Windows (going back to the Windows 10 Anniversary Update) will be supported by the web install experience on previous versions of Windows 10. This experience provides significant improvements to the existing app install procedure.

How does direct web install work?

Protocol Activation Scheme

We introduced a new protocol activation scheme that is already registered in the OS to invoke App Installer. When a user clicks a app package hosted web link with our registered scheme, App Installer is invoked. This activation mechanism is browser independent and so is beneficial to site administrators who can now be agnostic of the browsers while incorporating app packages into their web sites.

Requirements for protocol activation scheme

  1. Web servers that support byte range requests (HTTP/1.1)
    • App Packages need to be hosted on servers that support HTTP/1.1 protocol

How to enable this on your webpage

Users who want to host app packages on their web sites need to follow this step:

Prefix your app package URIs with the activation scheme 'ms-appinstaller:?source=' referencing them on your webpage


<html>
   <body>
     <h1>MyApp Web Page</h1>
     <a href="ms-appinstaller:?source=http://mywebservice.azureedge.net/HubApp.appx"> Install app package </a> 
     <a href="ms-appinstaller:?source=http://mywebservice.azureedge.net/HubAppBundle.appxbundle"> Install app bundle </a> 
     <a href="ms-appinstaller:?source=http://mywebservice.azureedge.net/HubAppSet.appinstaller"> Install related set </a>
    </body>
</html>

Web install experience on previous versions of Windows 10

On versions prior to the Fall Creators Update, App Installer cannot directly install the app from the web. On these versions, App Installer can only install app packages that are locally available.
So, App Installer will download the package and require the user to double click the downloaded package to install.

Microsoft SmartScreen integration

Microsoft SmartScreen has always been part of the installation process for installing apps via App Installer. SmartScreen ensures users are safeguarded from the malcontent that can make its way on to their devices. With the latest update to App Installer, SmartScreen is a AI powered module that will intelligently detect unsafe apps and warn the users accordingly.

Click here to learn more about installing a related set or learn how to auto-update your apps that are distributed using App Installer.

We hope that these new additions will give you more options to share and distribute UWP apps with your users. We are very interested in hearing your feedback. Please post your comments and questions below.

Thanks!
Chaitanya Donthini, Program Manager – Windows Developer Platform

Comments (13)

  1. This is looking very good. I am testing it now.

  2. Sapan says:

    Really we were waiting for this feature.
    I guess Microsoft soon understood that LOB developers don’t want to upload their apps to Windows Store (even private store).
    Please share some videos and samples and fix those broken links 😉 .

    1. c.donthini says:

      Fixed the links 🙂 In the article, I have pasted a short HTML snippet as a sample. All you need to invoke App Installer to perform the install is the custom scheme(ms-appinstaller:?source=) in front of the URI.

      If the provided sample isn’t sufficient, we can provide more appropriate guidance if you provide more details about your scenario.

  3. Israel Geron says:

    A few questions:
    1. Can I run App Installer in silent mode (without UI & User interaction) ?
    2. Will App Installer work when the user is not login to the store ?
    3. Anyone has a link to sample webpage that implements a Direct Web Install ?

    1. John.V says:

      1. The PowerShell command Add-AppxPackage can be used to silently install apps.
      2. The AppInstaller is for installing .appx and .appxbundles that are stored outside of the store. It does not require a user to be logged into the store.
      3. There is no sample site right now, but its as easy as adding the uri to your existing website that starts with ‘ms-appinstaller:?source=’ So for example ms-appinstaller:?source=http://contoso.azureedge.net/Sample_1.0.526.0_x64.appx

      1. Israel Geron says:

        If I want to download from a web page a AppxBundle file that depends on two other appx file ?

      2. c.donthini says:

        Are the two other .appx files framework packages? If they are framework packages, during installation App Installer app will install the required frameworks automatically on the user’s behalf.

        If they are not framework packages but are optional packages, we recommended you to use a .appinstaller file to define your set of packages that you want to deploy. Here is a blogpost which goes through the uses of .appinstaller file and here is blogpost to build your .appinstaller file.

  4. Carlo says:

    “Click here” link for auto-update topic isn’t there.

    1. John.V says:

      Should be fixed now

  5. Good news. How does this handes updates? Specially for highly updated LOB applications.

  6. pnp0a03_ says:

    Great! Direct Web install is truly straightforward for end users.
    I have one q … Is this applicable for all modern web browsers? or only on Microsoft Edge?

    1. John.V says:

      with the activation scheme ‘ms-appinstaller:?source=’ it will work with any browser.

Skip to main content