Skip to content

PWAs as URL Handlers #552

Closed
Closed

Description

@LuHuangMSFT

Saluton TAG!

I'm requesting a TAG review of Progressive Web Apps as URL Handlers.

"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."

Further details:

  • I have reviewed the TAG's API Design Principles
  • The group where the incubation/design work on this is being done (or is intended to be done in the future): WICG
  • The group where standardization of this work is intended to be done ("unknown" if not known): Web Applications Working Group
  • Existing major pieces of multi-stakeholder review or discussion of this design: Github issues
  • Major unresolved issues with or opposition to this design: compatibility with Declarative Link Capturing proposal
  • This work is being funded by: Microsoft

You should also know that...

We'd prefer the TAG provide feedback as (please delete all but the desired option):
🐛 open issues in our GitHub repo for each point of feedback

Activity

  1. self-assigned this
    on Aug 24, 2020
  2. added this to the 2020-09-07-f2f milestone on Aug 24, 2020
  3. kenchris commented on Sep 1, 2020

    @kenchris

    @marcoscaceres @anssiko you probably want to have a look at this

  4. kenchris commented on Sep 1, 2020

    @kenchris

    I got a bit confused by

                "exclude_paths": [
                    "/only/for/partnerapp/*"
                ]
    

    Does this mean that the partnerapp (in this case) cannot be developed as a PWA?

  5. LuHuangMSFT commented on Sep 3, 2020

    @LuHuangMSFT
    Author

    @kenchris Thanks for asking. That exclude pattern says that the app at https://contoso.com/manifest.json has permission to capture all paths except for paths matching "/only/for/partnerapp/", i.e. https://tenant.contoso.com/only/for/partnerapp/. There is no special significance to that particular path pattern. I just wanted to illustrate that the origin may want to allocate URLs to be handled by different apps.

    There's no reason why https://tenant.contoso.com/only/for/partnerapp/ cannot itself be the scope of a PWA (although the origin would then probably not want to allow other apps to handle those URLs). There is also no reason why the PWA at https://partnerapp.com/manifest.json would be hampered.

  6. LuHuangMSFT commented on Sep 21, 2020

    @LuHuangMSFT
    Author

    Quick fyi for visibility: I just merged a small PR to the explainer which mainly adjusted the manifest and association file JSON format for this feature.
    WICG/pwa-url-handler#17

  7. removed this from the 2020-09-21-F2F-Cork milestone on Oct 14, 2020
  8. changed the title [-][TAG review request] PWAs as URL Handlers[/-] on Jan 27, 2021
  9. kenchris commented on Jan 27, 2021

    @kenchris

    I think it makes sense to use the pattern from https://github.com/WICG/urlpattern/blob/master/explainer.md for this @wanderview

    At least for allowed urls or disallowed urls

  10. wanderview commented on Jan 27, 2021

    @wanderview

    FWIW I suggested that in WICG/pwa-url-handler#21.

  11. kenchris commented on Jan 27, 2021

    @kenchris

    "There is one use case that we wish to address in this explainer: URL activation in native applications."

    I think this should also work for installed web applications such as Progressive Web Apps if the URL is out of scope

  12. ylafon commented on Jan 27, 2021

    @ylafon
    Member

    Also, the goals seems to be matching what the MiniApp WG wants to define, I suggest discussing with them as well (ping @xfq)

  13. LuHuangMSFT commented on Jan 28, 2021

    @LuHuangMSFT
    Author

    I think it makes sense to use the pattern from https://github.com/WICG/urlpattern/blob/master/explainer.md for this

    I'll open a PR asap to edit the explainer so we can see what it looks like using URLPattern.

    I think this should also work for installed web applications such as Progressive Web Apps if the URL is out of scope

    I think url_handlers and web-app-origin-association is able to support this. However, I think this behavior falls under navigation capture and would like to see the in-scope version of it enabled with Declarative Link Capturing first.

    Also, the goals seems to be matching what the MiniApp WG wants to define, I suggest discussing with them as well

    Thanks for the connect. I'll review the group charter and docs.

  14. kenchris commented on Sep 15, 2021

    @kenchris

    Hi there, how does this relate to https://github.com/WICG/manifest-incubations/blob/gh-pages/scope_extensions-explainer.md

    That document says:

    The Scope Extensions proposal is intended to be a replacement for the URL Handlers proposal with the following changes:

    We assume that this means that this proposal is now not moving forward?

  15. added
    Progress: propose closingwe think it should be closed but are waiting on some feedback or consensus
    and removed
    Progress: propose closingwe think it should be closed but are waiting on some feedback or consensus
    on Sep 15, 2021
  16. atanassov commented on Sep 15, 2021

    @atanassov

    We took another look this during our Gethen vf2f plenary. At this point we are closing this review since it has been already overtaken by the new work on scope extensions. Thank you for working with us. We look forward to reviewing the new proposal.

  17. added
    Resolution: overtakenfor example another proposal has emerged which covers the same use cases and enjoys broader support
    on Sep 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Resolution: overtakenfor example another proposal has emerged which covers the same use cases and enjoys broader supportReview type: CG early reviewAn early review of general direction from a Community Group

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions