This is a very rough mock up, but I imagine a flow like this. I’ll likely implement something similar in my app.
And of course, none of this is even a question for any other client. PWAs can register handlers during install by specifying them in the manifest, and native apps can use the OS-provided tools.