Open play store app from browser link

感情迁移 提交于 2020-01-13 09:44:52

问题


From this post I was able to create a functionality to redirect user to android or ios from a single link. However, on detection of Android I want to open the play store with my app shown. I tried the below link on redirect:

window.location.href = "https://play.google.com/store/apps/details?id=com.myapp";

but it opens the play store in the browser itself. I want to open the play store app, I am assuming that my app users will be having the play store app, so I do not want to check whether the play store app is installed or not. I also tried the market link as below

window.location.href = "market://details?id=com.myapp";

but this also does not work. Help appreciated.


回答1:


I got it working by using the below url on redirect

window.location.href = "https://play.app.goo.gl/?link=https://play.google.com/store/apps/details?id=com.myapp";

When I visit this url from the browser of my mobile, it does not open the play store within browser but opens the play store app instead. This serves my purpose.




回答2:


You can do this by checking URL in shouldOverrideUrlLoading method of your WebViewClient. See below

String market_url = "market://details?id=package_name";
String website_url = "https://play.google.com/store/apps/details?id=package_name";

onCreate ()

WebView webview = (WebView) findViewById(R.id.webview);
webview.loadUrl("file:///android_asset/index.html");               // path to html
webview.setWebViewClient(new Callback());


private class Callback extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if (url.equals(website_url)) {
            try {
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_VIEW);
                intent.setData(Uri.parse(market_url));
                startActivity(intent);
            } catch (ActivityNotFoundException e) {
            }
        }
        return (false);
    }
}

index.html

<a href="https://play.google.com/store/apps/details?id=package_name">App link</a>

This will always open your link in play store.




回答3:


I think a better way to do this could be

    $(document).ready(function (){
 if(navigator.userAgent.toLowerCase().indexOf("android") > -1){
     window.location.href = 'http://play.google.com/store/apps/details?id=com.truecaller&hl=en';
 }
 if(navigator.userAgent.toLowerCase().indexOf("iphone") > -1){
     window.location.href = 'http://itunes.apple.com/lb/app/truecaller-caller-id-number/id448142450?mt=8';
 }
});


来源:https://stackoverflow.com/questions/51063523/open-play-store-app-from-browser-link

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!