android - WebView 中的 YouTube 移动网站上的视频不起作用 - Android

标签 android youtube webview

在我的 WebView 中,我正在加载 YouTube 官方网站: http://m.youtube.com/index?desktop_uri=%2F&gl=US#/

我希望用户能够选择视频并直接观看。 WebView 没有这样做,所以我想也许我应该对 youtube 应用程序运行一个 Intent 。 首先,我必须从链接中导出视频 ID。

我试过这段代码,但它与链接不匹配..:

public class BrowserClient extends WebViewClient {    
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {       
            //Check if YouTube video link
            Log.d("WBC", "loading link: " + url);
            String youTubeLink = "http://m.youtube.com/index?desktop_uri=%2F&gl=US#/watch?xl=xl_blazer&v=";
            if (url.startsWith(youTubeLink)){      
                Log.d("WBC", "This is a YouTube link: " + url);
                 view.getContext().startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("http://www.youtube.com/v/%s", url.substring(youTubeLink.length(),url.length())))));
                  return true;
            }

            return super.shouldOverrideUrlLoading(view, url);
        }
}

有什么帮助吗?

最佳答案

请尝试此代码,它在我的应用程序中完美运行。

            String sPath = "urlGoesHere";
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.setData(Uri.parse(sPath));
            startActivity(i);

关于android - WebView 中的 YouTube 移动网站上的视频不起作用 - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5065875/

相关文章:

android - 如何为 exoplayer 实现自定义 LoadErrorHandlingPolicy

ios - Youtube Live Streaming API - 创建直播流失败,返回 "The request did not specify any iOS bundle ID"

objective-c - 全屏(信息亭)带有 WebView 的 NSWindowController 需要先单击才能单击任何链接

java - 应用程序状态 : Static variables or Setters and Getters in JAVA

android - 如何在操作栏中制作带有通知数量的图标?

android - 从 Firebase 数据库中获取数据时如何显示加载消息?

php - 您如何使用 Google Youtube API v3 在没有用户干预的情况下接收已知帐户的访问 token ?

php - 插入 YouTube 链接并仅显示 ID

android - 从android中的html字符串单击时如何获取href链接打开到webView?

Android WebView 无法在 UIDAI/Aadhaar 网站上的 DownloadStart 上下载文件