How do I open any app from my web browser (Chrome) in Android? What do I have to do with the A Href link?

I want to open third party apps from my web browser. So, I don't have any manifest file or anything.

I have a web page.

I want to have a link which opens the third party app e.g Twitter or Opera.

How do I structure the anchor link to go open that app?

Thank you.


Solution 1:

The basic syntax for an intent based URI is as follows:

intent:
   HOST/URI-path // Optional host
   #Intent;
      package=[string];
      action=[string];
      category=[string];
      component=[string];
      scheme=[string];
   end;

Parsing details available in the Android source.

To launch the ZXing barcode scanner app you can encode your href as follows:

<p>
  <a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;end">Take a qr code</a><br>

  <a href="intent://scan/?ret=http%3A%2F%2Fexample.com#Intent;scheme=zxing;package=com.google.zxing.client.android;end">Take a qr code = 10px x 10px</a><br>

  <a href="intent:play/?mediaset=android-phone-rtmp-high&amp;playlisturl=http://www.bbc.co.uk/iplayer/playlist/bbc_one_london#Intent;scheme=bbcmediaplayer;package=air.uk.co.bbc.android.mediaplayer;end">Launch BBC</a>
</p>

The Android manifest defines the scheme to be zxing, the package to be com.google.zxing.client.android and the host data to be scan.

If the activity you are invoking via an intent contains extra data, these too can be included.

Only activities that have category filter android.intent.category.BROWSABLE are able to be invoked using this method as it indicates that the application is safe to open from the browser.

Solution 2:

This is not generically possible. If other apps have a custom URL handler then you can open that URL, but otherwise you can't.