使用delphi在Android下的TWebbrowser中全屏观看youtube或其他视频时出现问题

Posted

技术标签:

【中文标题】使用delphi在Android下的TWebbrowser中全屏观看youtube或其他视频时出现问题【英文标题】:Problem watching youtube or other videos fullscreen in TWebbrowser under Android using delphi 【发布时间】:2020-12-05 09:00:51 【问题描述】:

我正在使用 delphi FMX 和 TWebbrowser 为 android 做一个应用程序,用户将从列表视图中选择一个视频,然后在 TWebbrowser 控件中播放视频,我面临的问题是,即使视频是以 youtube 视频为例,我按下最大化符号,视频不会全屏显示,没有任何变化。是解决方法还是我做错了什么。谢谢。我正在使用 delphi 10.3.3

【问题讨论】:

【参考方案1】:

您没有做错任何事情 - TWebBrowser 需要使用实现某些方法的 WebChromeClient 的后代(必须在 Java 中完成),如本文所述:

https://medium.com/@oliverdamjan2013/fullscreen-youtube-video-in-webview-android-21f1c778cf56

我在这个演示中做了类似的事情:

https://github.com/DelphiWorlds/Kastri/tree/master/Demos/WebBrowserFileChooser

它使用了实现 onShowFileChooser 的 WebChromeClient 的后代。包含 Java 代码的文件夹在这里:

https://github.com/DelphiWorlds/Kastri/tree/master/Java/WebChromeClient

可以根据链接到的其他文章扩展代码以实现必要的方法(onShowCustomView 等)。

2020 年 11 月 10 日编辑

我现在更新了底层 Java 代码并在此处更新了演示:

https://github.com/DelphiWorlds/Kastri/tree/master/Demos/WebBrowserFileChooser

(而不是创建一个全新的演示)

支持全屏观看 YouTube 视频。 请注意,演示依赖于 Kastri 库中的文件

【讨论】:

再次感谢您的帮助,但过去 3 天我尝试了解您所做的工作,我可以说很复杂。在 delphi 中使用 Java 对我来说是新的,我不知道在其中实现新功能。问你是否可以帮助实施它会不会太过分了?再次感谢 请给我发电子邮件。 myEmail := 'david' + 'n' + '@radsoft.com' + '.au'; 非常感谢,我很伤心,我才注意到你的更新。再次出色的工作再次感谢您的大力支持。最好的问候

以上是关于使用delphi在Android下的TWebbrowser中全屏观看youtube或其他视频时出现问题的主要内容,如果未能解决你的问题,请参考以下文章

delphi android蓝牙4.0开发

delphi如何删除目录和目录下的所有文件

Vista / 7下的本机提示/工具提示与Delphi 7?

深入Delphi下的DLL编程

delphi 如何屏蔽win98和winme下的系统热键alt+f4,ctrl+

深入Delphi下的DLL编程