【问题标题】:android 2.2 WebView and WebViewClient RTSP problemandroid 2.2 WebView和WebViewClient RTSP问题
【发布时间】:2010-07-21 23:27:12
【问题描述】:

我编写了一个带有 webview 的应用程序,它显示 m.youtube.com。它适用于其他安卓版本。但是,在 Android 2.2 中,当单击“rtsp://vx.cache.youtube.com/...”之类的链接时,甚至不会调用 shouldOverrideUrlLoading。有人有同样的问题吗?

【问题讨论】:

    标签: android uiwebview


    【解决方案1】:

    我找到了解决这个问题的方法。

    如果您在请求 YouTube 页面 (http://m.youtube.com/) 时更改 WebView 的用户代理,您将获得指向视频的正确链接。并且所有视频都将通过 YouTube 内部应用程序打开。

    这里是小代码sn-p:

    final String url = "http://m.youtube.com/#/watch?xl=xl_blazer&v=osc8Gvz40C4";
    
    final WebView viewWeb = new WebView(this);
    viewWeb.getSettings().setJavaScriptEnabled(true);
    String userAgent = viewWeb.getSettings().getUserAgentString();
    userAgent = userAgent.replace("Android 2.2", "Android 2.1");
    viewWeb.getSettings().setUserAgentString(userAgent);
    viewWeb.loadUrl(url);
    

    这有点棘手,但它确实有效。期待找到解决方法,但不是解决方法。

    【讨论】:

    【解决方案2】:
    mWebView.loadUrl(url);
    
    if (url.contains("rtsp")) {
         Uri uri = Uri.parse(url);
         Intent intent = new Intent(Intent.ACTION_VIEW, uri);
         startActivity(intent);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多