Intent to Prototype: Progressive Web Apps as URL Handlers

369 views
Skip to first unread message

Lu Huang

unread,
Aug 26, 2020, 9:44:47 PM8/26/20
to blin...@chromium.org

Contact emails

lu.h...@microsoft.com, mandy...@microsoft.com

Explainer

https://github.com/WICG/pwa-url-handler

Design docs

https://docs.google.com/document/d/19dGklalQTRtRrG3PKrVbDRmYPLHGLnsGEwUaed7sAFQ/edit?usp=sharing

TAG review

https://github.com/w3ctag/design-reviews/issues/552

Summary

This feature enables progressive web apps to register as https URL handlers using a new member in the web app manifest. When the browser is started by a URL launch from the OS, it will look for matching URL handlers and prompt the user to launch the URL in a web app. Where possible, web apps will be registered directly with the host OS as a URL handler for a more native experience.

Motivation

Developers can create a more engaging experience if Progressive Web Apps (PWAs) are able to register as handlers for https uniform resource identifiers (URLs). Today, native applications on many operating systems (Windows, Android, iOS, MacOS) can be associated with http(s) URLs. They can request to be launched as URL handlers when associated URLs are activated. For example, a user could click on a link to a news story from an e-mail. An associated native app for viewing news stories would automatically be launched to handle the activation of the link. Web developers would be able to build more compelling PWA experiences with stronger user engagement if PWAs could request to be URL handlers through their web app manifests.

Risks

Interoperability and Compatibility

This feature is new to the web and web apps that do not opt in will not be affected because any additions to the web app manifest will be optional. Browser behavior will also not be affected if there are no installed apps that opt in. Browser that do not support this feature will not be adversely affected by new members in the web app manifest.

Gecko: No signal

WebKit: No signal

Web developers: No signals

Debuggability

Debug functionality will be added the the DevTools(F12) Application pane.

Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes. It will be supported in the browser on all platforms. Integration with OS features for native URL handling might not be possible on all platforms.

Is this feature fully tested by web-platform-tests?

No. Web app manifest changes that are part of this feature can be tested in WPT app manifest tests: https://github.com/web-platform-tests/wpt/tree/master/appmanifest

Link to entry on the Chrome Platform Status

https://www.chromestatus.com/feature/5739732661174272

 

Reply all
Reply to author
Forward
0 new messages