描述
作为示例,我提供了www.youtube.com
,可让您观看任何类型的视频。以下是Oracle Tutorial使用JavaFX WebView
显示网站的最低代码。
问题是:
1)不允许在任何视频上全屏显示。
2)即使视频支持全高清也无法继续播放。
问题
为什么会这样?我已尝试使用最新的Java 8 Update 131
和Java 9 update 171
代码:
import javafx.application.Application;
import javafx.application.Platform;
import javafx.scene.Scene;
import javafx.scene.layout.BorderPane;
import javafx.scene.paint.Color;
import javafx.scene.web.WebEngine;
import javafx.scene.web.WebView;
import javafx.stage.Stage;
public class WebViewSample extends Application {
private Scene scene;
@Override
public void start(Stage stage) {
// create scene
stage.setTitle("Web View");
scene = new Scene(new Browser(),Color.BLACK);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
class Browser extends BorderPane {
final WebView browser = new WebView();
final WebEngine webEngine = browser.getEngine();
public Browser() {
//add components
setCenter(browser);
// load the home page
webEngine.load("https://www.youtube.com");
}
// JavaScript interface object
public class JavaApp {
public void exit() {
Platform.exit();
}
}
}
答案 0 :(得分:3)
无法全高清
Youtube仅支持某些版本的Chrome / IE / Safari / Firefox上的高品质视频。 (我使用JDK8编译了你的程序,它最多支持720p。)点击“质量” - >“缺少选项?”时可以找到以下详细信息。
以下是一些支持的浏览器和操作系统组合 YouTube的高品质视频格式:
Google Chrome(所有操作系统)
Windows 8.1或更高版本上的Internet Explorer或Edge
Mac OS X 10.10或更新版本的Safari
Windows 7或更高版本以及Mac OS X 10.10或更高版本的Firefox
无法全屏
JavaFX WebView似乎不支持全屏模式,因为它有自己的限制。您可以在此处找到更多解释:http://mail.openjdk.java.net/pipermail/openjfx-dev/2016-January/018531.html