get-installed-related-apps
get-installed-related-apps copied to clipboard
Standardize web-to-web asset links
Spinning out from (and summarizing) an internal conversation at Google.
Currently, it looks like the way that getInstalledRelatedApps was implemented in Chrome to do web-to-web queries (i.e., for a website A to be able to query whether another PWA B is installed) relies on PWA B containing an Android-like Digital Asset Links JSON file linking the two websites together.
I think using the proprietary JSON format for web-to-Android queries is perfectly OK, since essentially this is a (proposed) standard API to query the existence of a proprietary native app. But if we're querying the existence of another web app, then the mechanism for the app to link back to the querying origin should also be standardized, not using a Google or Android specific format.
So my proposal is that we deprecate that mechanism, and introduce a standard format. There just so happens to be a proposed format for cross-origin verification: @LuHuangMSFT proposed such a format as part of URL Handlers which is also incubating in WICG. While that format is proposed as specifically for URL Handling, I think it could be extended as a general web-to-web asset links format.
So I propose a three-step process.
- Take the URL Handlers asset links format and generalize it so it is applicable to any usage. @alancutter and Lu have agreed to take this concept and generalize it, so that is ✅ in progress.
- Specify in the
getInstalledRelatedAppsspec that web-to-web links should use the standardized format, not the Android one. - Slowly phase out the use of the Android format for web-to-web links. (Keeping it for web-to-Android links is fine.)
(1) will take place on the App Manifest spec. This bug tracks the work for (2). (3) is out of the scope of the spec; it's a deprecation involving any participating sites and the Chromium codebase.
Generalisation of the multi origin component of URL Handlers here: scope_extensions
Good