他们是否在 gwt 或 gwt 引导程序中找到运行 Web 应用程序的设备。比如设备是iphone、平板、desktop.ipad等,请帮忙。
问问题
746 次
2 回答
2
设置
GWT 允许您定义将在执行延迟绑定机制期间解析的属性(您的应用程序启动序列的一部分,请参阅此处的延迟绑定元素 )。例如,在您的应用程序文件中定义它:gwt.xml
<define-property name="formfactor" values="desktop,tablet,mobile" />
然后在同一个文件中提供它:
<property-provider name="formfactor">
<![CDATA[
// my User Agent String-parsing JavaScript code
]]>
</property-provider>
有关完整示例,请参阅MobileWebApp,一个 GWT 示例应用程序。具体来说,看看FormFactor.gwt.xml。
用法
设置属性并对其提供程序进行编程后,您的应用程序中有多个位置可以访问该属性的值:
CSS:
@if formfactor mobile { /* my mobile form factor-specific rules */ }
(更多支持的规则见CssResource)
在模块 XML 定义中(例如用于 ClientFactory 选择):
<replace-with class="com.my.client.ClientFactoryImplDesktop"> <when-type-is class="com.my.client.ClientFactory" /> <when-property-is name="formfactor" value="desktop" /> </replace-with>
Java代码?只能通过延迟绑定。
于 2013-07-18T13:39:51.393 回答
1
You don't need bootstrap at all to know which browser your client is running on.
Just call...
Navigator.getUserAgent()
...to get the user-agent of the browser.
A list of all user-ager avaiable is provided here:
http://www.useragentstring.com/pages/All/
For instance, check for "ipad" match in user-agent String.
于 2013-07-18T13:33:05.977 回答