如何将链接重定向到Google Play Market?

时间:2017-04-05 15:54:33

标签: javascript android redirect webview webviewclient

我使用WebView应用程序创建了一个应用程序,该应用程序显示了我博客的网站,我在您的博客中使用了Google Play的链接,但是我无法将所有指向Google Play的链接打开非常Play市场,现在应用程序中打开的所有链接甚至都没有转发到浏览器。我应该使用哪些代码?请帮忙

这些是我在MainActivity.java中使用的代码:



package com.thegosa.bterwe;

import android.annotation.TargetApi;
import android.app.Activity;
import android.app.FragmentManager;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.graphics.drawable.DrawerArrowDrawable;
import android.util.Log;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView; // import WebView class
import android.webkit.WebViewClient; // import class WebViewClient
import android.widget.ProgressBar;
import android.widget.Toast;



@SuppressWarnings("ALL")
public class MainActivity extends AppCompatActivity {


    WebView wv ;
    private Bundle savedInstanceState;

    // When Back Pressed Go Back.
    @Override
    public void onBackPressed(){
        if (wv.canGoBack()){
            wv.goBack();
        }else {
            super.onBackPressed();
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        wv = (WebView) findViewById(R.id.webView) ;
        //Enable JavaScript
        wv.getSettings().setJavaScriptEnabled(true);
        wv.setFocusable(true);
        wv.setFocusableInTouchMode(true);
        // Set Render Priority To High
        wv.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
        wv.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
        wv.getSettings().setDomStorageEnabled(true);
        wv.getSettings().setDatabaseEnabled(true);
        wv.getSettings().setAppCacheEnabled(true);
        wv.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        //Load Url
        wv.loadUrl("http://themesxperia.blogspot.com/");
        wv.setWebViewClient(new WebViewClient());



    }




}




2 个答案:

答案 0 :(得分:0)

您应该使用Intent进入Google Play市场,而不是使用网页浏览。

以下是解决方案:

  

How to open the Google Play Store directly from my Android application?

答案 1 :(得分:0)

public void OpenPlayStore() {
            Uri uri = Uri.parse(getResources().getString(R.string.rate_us));
            Intent goToMarket = new Intent(Intent.ACTION_VIEW, uri);
            goToMarket.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY |
                    Intent.FLAG_ACTIVITY_NEW_DOCUMENT |
                    Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
            try {
                startActivity(goToMarket);
            } catch (ActivityNotFoundException e) {
                startActivity(new Intent(Intent.ACTION_VIEW,
                        Uri.parse(getResources().getString(R.string.rate_us2))));
            }
        }

这将打开Play Market,如果不可能,它将在您的应用网站上打开浏览器。

字符串是:

rate_us是" market:// details?id = com.companyname.appname"

rate_us2是Play商店中应用的链接

希望它有所帮助。