从Google Web Toolkit检测64位或32位Windows

时间:2017-03-14 14:50:21

标签: javascript java gwt gxt

如何在Google Web Toolkit中检测操作系统版本(32位或64位)?

1 个答案:

答案 0 :(得分:0)

您可以使用Window.Navigator getUserAgent()方法。该字符串将对操作系统有一些线索。以下是各种浏览器的一些示例:

Chrome:“Mozilla / 5.0( Windows NT 10.0; Win64 ; x64 )AppleWebKit / 537.36(KHTML,与Gecko一样)Chrome / 58.0.3029.110 Safari / 537.36“

Firefox:Mozilla / 5.0( Windows NT 10.0; WOW64 ; rv:43.0)Gecko / 20100101 Firefox / 43.0

IE11:“Mozilla / 5.0( Windows NT 10.0; WOW64 ; Trident / 7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727 ; .NET CLR 3.0.30729; .NET CLR 3.5.30729; rv:11.0)像Gecko“

Edge:Mozilla / 5.0( Windows NT 10.0; Win64 ; x64)AppleWebKit / 537.36(KHTML,与Gecko一样)Chrome / 51.0.2704.79 Safari / 537.36 Edge / 14.14393

所有名称中都包含Windows,以及Win64或WOW64。后者意味着在64位Windows操作系统上运行32位浏览器。

public boolean isWindows(){
  return Window.Navigator.getUserAgent().indexOf('Windows') != -1;
}

public boolean isWin64(){
  return isWindows() && (
    Window.Navigator.getUserAgent().indexOf('Win64') != -1 ||
    Window.Navigator.getUserAgent().indexOf('WOW64') != -1);
}

查询操作系统通常是一个坏主意,但有一些有效的用例,例如为用户提供正确的平台下载。