Open android application from a web page
I know that for opening android application from a link inside a web page we have to write the following in the AndroidManifest.xml:
<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="my_scheme" android:host="my_host" /> </intent-filter>
The problem is that I wrote it in the following way:
<intent-filter> <action android:name="my_action"/> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="my_scheme" android:host="my_host" /> </intent-filter>
I didn't add android.intent.action.VIEW and instead I added my own action that i made. I can't change it because the version is already released.
The question is,
if there's a way to make the application run from JavaScript or simple html page, maybe by defining the specific action in the page?
Thanks,
Paz.
SOLVED:
Thanks to David I found a solution:
<a href="intent://my_host#Intent;scheme=my_scheme;action=my_action;end">Link to my stuff</a>
Answers
Try this:
Make your links look like this:
<a href="intent:#Intent;action=my_action;end">Link to my stuff</a>
Also have a look at Launch custom android application from android browser
AndroidMainfest declare:
<activity android:name="..."> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="hostName" android:path="path" android:scheme="schemeName" /> </intent-filter> </activity>
you can let to invoke
<a href = "schemeName://hostName/path">
or add param similar url in brower
<a href = "schemeName://hostName/path?id=1&name=mark">
One way as 林平君 saied,and another way by invoking js method ,code as follow:
function openAActivity(){ window.location = "schemeName://hostName/path" }
this method will send an Android intent to start specified activity.
1st way:
<html><head></head><body> <iframe src="YourApp://profile/blabla" width="1px" height="1px" scrolling="no" frameborder="0"></iframe> <script> setTimeout(function() { window.location = "http://YourSite.com/profile/blabla"; }, 4000 ); </script> </body> </html>
OR 2nd way: https://stackoverflow.com/a/24023048/2165415