2014-04-22 22 views

risposta

17

È possibile determinare la versione di base di WebKit utilizzata in WebView dal querying the user agent string del motore di WebView.

web.getEngine().getUserAgent() 

Questo mostra una versione WebKit di 537,44 per Java 8u5.

Questa è la versione upstream di WebKit utilizzata nell'implementazione di JavaFX prima di apportare modifiche a valle per consentirne il funzionamento con JavaFX.

Man mano che vengono rilasciate le nuove versioni di Java 8, la versione di WebKit utilizzata in ogni versione cambia, ma è sempre possibile determinare ciò che viene utilizzato interrogando la Stringa agente utente.

Esempio di output Codice (sulla mia macchina)

Java Version: 1.8.0_05-b13 
JavaFX Version: 8.0.5-b13 
OS:    Windows 7, amd64 
User Agent:  Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.44 (KHTML, like Gecko) JavaFX/8.0 Safari/537.44 

codice di esempio

import javafx.application.Application; 
import javafx.application.Platform; 
import javafx.scene.web.WebView; 
import javafx.stage.Stage; 

public class WebViewVersion extends Application { 
    @Override public void start(Stage stage) { 
     WebView web = new WebView(); 
     System.out.println(
       "Java Version: " + System.getProperty("java.runtime.version") 
     ); 
     System.out.println(
       "JavaFX Version: " + System.getProperty("javafx.runtime.version" 
     ); 
     System.out.println(
       "OS:    " + System.getProperty("os.name") + ", " 
            + System.getProperty("os.arch") 
     ); 
     System.out.println(
       "User Agent:  " + web.getEngine().getUserAgent() 
     ); 
     Platform.exit(); 
    } 

    public static void main(String[] args) { 
     launch(args); 
    } 
} 
Problemi correlati