javascript – Open android application from a web page-ThrowExceptions

Exception or error:

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> 
How to solve:

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

Leave a Reply

Your email address will not be published. Required fields are marked *