How can I open a URL in Android's web browser from my application?

前端 未结 30 2763
庸人自扰
庸人自扰 2020-11-21 22:09

How to open an URL from code in the built-in web browser rather than within my application?

I tried this:

try {
    Intent myIntent = new Intent(Int         


        
相关标签:
30条回答
  • 2020-11-21 22:57

    If you want to show user a dialogue with all browser list, so he can choose preferred, here is sample code:

    private static final String HTTPS = "https://";
    private static final String HTTP = "http://";
    
    public static void openBrowser(final Context context, String url) {
    
         if (!url.startsWith(HTTP) && !url.startsWith(HTTPS)) {
                url = HTTP + url;
         }
    
         Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
         context.startActivity(Intent.createChooser(intent, "Choose browser"));// Choose browser is arbitrary :)
    
    }
    
    0 讨论(0)
  • 2020-11-21 22:58

    Try this:

    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
    startActivity(browserIntent);
    

    That works fine for me.

    As for the missing "http://" I'd just do something like this:

    if (!url.startsWith("http://") && !url.startsWith("https://"))
       url = "http://" + url;
    

    I would also probably pre-populate your EditText that the user is typing a URL in with "http://".

    0 讨论(0)
  • 2020-11-21 22:59

    other option In Load Url in Same Application using Webview

    webView = (WebView) findViewById(R.id.webView1);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.loadUrl("http://www.google.com");
    
    0 讨论(0)
  • 2020-11-21 23:00
    String url = "http://www.example.com";
    Intent i = new Intent(Intent.ACTION_VIEW);
    i.setData(Uri.parse(url));
    startActivity(i);
    
    0 讨论(0)
  • 2020-11-21 23:02

    Chrome custom tabs are now available:

    The first step is adding the Custom Tabs Support Library to your build.gradle file:

    dependencies {
        ...
        compile 'com.android.support:customtabs:24.2.0'
    }
    

    And then, to open a chrome custom tab:

    String url = "https://www.google.pt/";
    CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
    CustomTabsIntent customTabsIntent = builder.build();
    customTabsIntent.launchUrl(this, Uri.parse(url));
    

    For more info: https://developer.chrome.com/multidevice/android/customtabs

    0 讨论(0)
  • 2020-11-21 23:02

    Simply go with short one to open your Url in Browser:

    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("YourUrlHere"));
    startActivity(browserIntent);
    
    0 讨论(0)
提交回复
热议问题