Skip to content

Instantly share code, notes, and snippets.

@felquis
Last active November 13, 2024 22:30
Show Gist options
  • Save felquis/a08ee196747f71689dcb to your computer and use it in GitHub Desktop.
Save felquis/a08ee196747f71689dcb to your computer and use it in GitHub Desktop.
iOS, Android browser apps URL Schemes to handle URL between browsers, and apps..

Assume the user is on a mobile device iOS Safari (Or other browser), but you want a link to open into any other specific mobile browser app like Chrome, Safari, Firefox, Opera, Arc... How do you do that?

Chrome

To open on Chrome

<a href="googlechrome://example.com">try it on Chrome</a>

check out Chrome iOS Docs for more information

Firefox

To open on Firefox

<a href="firefox://open-url?url=http://example.com">try it on Firefox</a>

Check out Firefox Docs for more information

Opera

To open on Opera

<a href="opera-http://example.com">Try it on Opera</a>

Check out this page for more information, I couldn't found official Opera Documentation

In-App browsers

Assume the users is on an in-app webview or any other browser, but an API is not support in-app browser, so you need to link the user to Safari, how do you achieve that?

Safari?

I couln't find a URL Scheme for Safari, tried safari://url but it didn't work, it will be handled by Safari.

I filled a bug on Safari webkit about this

I tried x-web-search but it didn't work

People have mentioned com-apple-mobilesafari-tab:https://google.com at redit

Demo and resources

Codepen Demo, Inter App Communication, Apple URL Schemes, I think registerProtocolHandler is somewhat related.. I think this bug is also somewhat related, cause there's developers trying to figure out if a URL Scheme is available in the platform, check out this Stackoverflow question

For Android I found intent Doc, this blog post is insightful, other insightful read was this starckoverflow question "Firefox for Android does not launch app when link is clicked" and URL "Scheme: How can I create a link, which will open a document in the Google Drive app"

Standards

Should we work on a standard way to share information between web apps to installed application and installed application to web apps and web apps to web apps, on desktop, tablets and smartphone?

There's basic necessities when developing a rich web app.

  1. What are the apps the user can share this piece of information?

    Whatsapp has the whatsapp:// URL Scheme, but there's no way to check if the given URL Scheme is available in the platform

    If the user clicks in share, the browser/platform should give a list of applications/web apps the user can share the given information, it could be a URL, String, File Buffer would be great, for example.. The user apply a custom filter to an image on a web app... So the user wants to share it on Instagram.

  2. Is a specfic URL Scheme available?

    There's no standard way to check if a URL Scheme is available

  3. How can I offer my web app the oportunite to the user share the information?

Android has a popup where the user choose where he wants to share the information, a URL or String.. or a image base64 enconded.. So... If my web site provide a way to share images, strings and links.. How can I tell the device/browser my web app can share this kind of information?

I found out the best reading these days is this blog post about a failed Web API called Web Indents, follow all the links

Thank you for reading, I appreciate your help.

@neestzjov
Copy link

How to make the link opened on iOS to use default browser rather than specific safari or chrome?

In-app Instagram Link -> Default Browser (user preference)

Just like this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment