Open google play details page for an app via javascript redirect from android browser

19,685

Solution 1

This seems to work. The redirect opens the Google Play app while using the default browser, but translates the link to https:// play.google... when using chrome

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) {
    if(confirm("Download app?")) {
        window.location.href= "market://details?id=<packagename>";
    }
}

Solution 2

If you want to redirect to Google Play app try doing it from the server.

Client side attempts will not work.

PHP example

    header("Location: market://details?id=com.your.app");

Solution 3

If the accepted answer does not work or fails to open in Chrome with this error

ERROR: ERR_UNKNOWN_URL_SCHEME

Change the window.location.href to window.location like this

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) {
 if(confirm("Download app?")) {
    window.location= "market://details?id=<packagename>";
 }
}
Share:
19,685
daniel.auener
Author by

daniel.auener

Webdeveloper at Internetavdelningen. :JS:PHP:JQUERY:JQM:CAKEPHP:CSS:CSS3:PHONEGAP:WORDPRESS:

Updated on June 27, 2022

Comments

  • daniel.auener
    daniel.auener about 2 years

    I want my website to redirect to a specific app in the Google Play Market if it is opened on an android device. I followed the instructions on http://developer.android.com/guide/publishing/publishing.html:

    "Display the details screen for a specific application: http://play.google.com/store/apps/details?id=<package_name>".
    

    Works great with a link the user is actively clicking on:

    <a href="http://play.google.com/store/apps/details?id=<package_name>">Download app</a>
    

    But if I am detecting the device with javascript and trying to redirect the browser automatically changes the http://... to https://... and the user is redirected to the Google Play website instead of the Google Play app on the phone.

    if(navigator.userAgent.toLowerCase().indexOf("android") > -1) {
        if(confirm("Download app?")) {
            window.location.href= "http://play.google.com/store/apps/details?id=<package_name>";
        }
    }
    

    Is there any way to change this behavior, my test device is a Samsung Galaxy with android 2.3.3?