我正在使用Eclipse RAP編寫RAP應用程序。客戶端可以是任何瀏覽器,iPad或Android平板電腦(使用Tabris)。有沒有機會找出哪個客戶端發送了請求?Tabris,Eclipse RAP:是否有一個公共API來了解哪個客戶端請求了該頁面?
我的問題的背景是:Tabris直到現在還不支持SashForms。因爲這個原因,我想渲染一個SashFrom,以防我爲Web客戶端提供服務,但不想在爲Android客戶端提供服務時創建SashForm。我可以做這樣的事情:
public static boolean isAndroid() {
return getUserAgent().contains(Constants.ID_ANDROID);
}
private static String getUserAgent() {
return RWT.getRequest().getHeader(Constants.USER_AGENT);
}
public static boolean isIos() {
return getUserAgent().contains(Constants.ID_IOS);
}
public static boolean isWeb() {
return !isAndroid() && !isIos();
}
但我想避免這種方法,因爲它使用的內部API和因爲我使用獨立RAP我需要一個在servlet-api.jar文件添加到WEB- INF/lib文件夾來運行,這也不是很好。
在此先感謝您的幫助和信息, Tobias。
非常感謝,這正是我所需要的。 – baumato 2012-08-03 14:29:15
你的鏈接不工作。做一些needFull – 2013-08-12 07:47:45
這一個工程:https://github.com/eclipsesource/tabris/blob/master/com.eclipsesource.tabris/src/com/eclipsesource/tabris/device/ClientDevice.java – Holger 2013-09-05 06:47:53