通过单击 Android Studio 中的按钮在 webview 中获取随机 Youtube 视频
Posted
技术标签:
【中文标题】通过单击 Android Studio 中的按钮在 webview 中获取随机 Youtube 视频【英文标题】:Get random Youtube video in webview by clicking button in Android studio 【发布时间】:2020-09-11 05:41:52 【问题描述】:我想制作一个应用程序,用户可以通过单击按钮在 web 视图中获取随机 youtube 视频。 我已经可以在我的网页视图中显示带有 url 的视频,但我想通过单击我的按钮从 youtube 获取任何随机视频。
在我的 xml 文件中,我有一个 webview 和一个按钮
´´´
MainActivity.java
''' 公共类 MainActivity 扩展 AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String path = "https://www.youtube.com/watch?v=1uwvxTT5V5M";
String dataUrl =
"<html><body>Video From YouTube<br><iframe width=\"420\" height=\"315\" src=\"https://www.youtube.com/embed/47yJ2XCRLZs\" frameborder=\"0\" allowfullscreen></iframe></body></html>";
WebView showYoutubeVideo = (WebView) findViewById(R.id.zufallvideo);
showYoutubeVideo.setWebViewClient(new WebViewClient()
public boolean shouldoverloadUrlLoading(WebView view, String url)
return false;
);
showYoutubeVideo.getSettings().setjavascriptEnabled(true);
showYoutubeVideo.loadData(dataUrl,"text/html", "utf-8");
【问题讨论】:
您要么需要创建自己的 API,要么搜索这些类型的 API,从这些 API 中获取视频 URL ... 【参考方案1】:TL;DR:这很复杂。
在 Youtube 在其 API 中公开一个端点来执行此操作之前,您需要找到一种解决方法。
有些人会建议使用“IMG”后跟一个随机整数(例如“IMG 22930”)来查询搜索。最终结果非常令人惊讶,因为大量视频是在没有重命名的情况下上传的。
这是在 python 中实现此变通方法的示例:https://github.com/0x01h/random-youtube-video-generator
【讨论】:
以上是关于通过单击 Android Studio 中的按钮在 webview 中获取随机 Youtube 视频的主要内容,如果未能解决你的问题,请参考以下文章
在单击按钮时将数据插入 Android Studio 中的 SQlite 数据库
单击Android Studio中的提交按钮后,如何将输入的值存储到变量并在屏幕上显示?
如何在单击按钮的 Android Studio 上发送邮件?