Я пытаюсь написать браузеру определенный код. Существует ли API GWT для обнаружения, какой браузер клиент использует?
На странице Cross-Browser Support руководства разработчика GWT приведена функция JSNI, возвращающая строку UserAgent.
Заметьте, однако, что вы, вероятно, захотите использовать Deferred Binding для написания кода, специфичного для браузера, вместо определения UserAgent.
Edit: Kasturi указывает на Window.Navigator.getUserAgent(), который реализован следующим образом:
/**
* Gets the navigator.appName.
*
* @return the window's navigator.appName.
*/
public static native String getAppName() /*-{
return $wnd.navigator.appName;
}-*/;
Так что да, это должно делать то же самое, что и функция, упомянутая на странице Cross-Browser Support (за исключением того, что она не вызывает toLowerCase()), хотя опять же, возможно, вам лучше использовать отложенное связывание.