GWT模块XML - 如何重新定义和使用多个用户代理 [英] GWT module XML - how to redefine and use more than one user agent
问题描述
在文章中,我学会了我可以加速编译器,但指定目标用户代理。问题我该如何指定多个用户代理?假设我的应用程序支持ie6和FF3
< set-property name =user.agentvalue =ie6,geck1_8 />
不起作用 - 我得到了XML解析错误:
[错误]无效的属性值'ie6,gecko1_8'
我想知道是否有方法在模块XML文件中指定多个特定的用户代理?
>在GWT2.4中将user.agent值设置为gecko时,我有类似的错误消息。所以,我环顾四周,发现gwt代码定义了可能的值。如果您查看com.google.gwt.user.UserAgent的gwt-user.jar .gwt.xml中,你可以看到你正在使用的GWT版本的可能值。
对于GWT2.4,这是我发现的:
<! - 浏览器敏感的代码应该使用'user.agent'属性 - >
< define-property name =user.agentvalues =ie6/>
< extend-property name =user.agentvalues =ie8/>
< extend-property name =user.agentvalues =gecko1_8/>
< extend-property name =user.agentvalues =safari/>
< extend-property name =user.agentvalues =opera/>
< extend-property name =user.agentvalues =ie9fallback-value =ie8/>
< property-provider name =user.agentgenerator =com.google.gwt.user.rebind.UserAgentPropertyGenerator/>
因此在我的情况下,gecko对于user.agent不是一个有效的值,如果我使用gecko1_8编译为Firefox很好。
In the article I learned I can speed up the compiler but specifying the target user agent. The problem how can I specify more than one user agent? Suppose my application supports ie6 and FF3
<set-property name="user.agent" value="ie6,geck1_8" />
doesn't work - I got XML parsing error:
[ERROR] Invalid property value 'ie6,gecko1_8'
I'm wondering if there's a way to specify more than one specific user agent in the module XML file?
I've had a similar error message, when setting the user.agent value to gecko in GWT2.4. So I looked around and found where the gwt code defines the possible values.
If you look in the gwt-user.jar at com.google.gwt.user.UserAgent.gwt.xml you can see the possible values for the version of GWT you are using.
For GWT2.4, this is what i found:
<!-- Browser-sensitive code should use the 'user.agent' property -->
<define-property name="user.agent" values="ie6" />
<extend-property name="user.agent" values="ie8" />
<extend-property name="user.agent" values="gecko1_8" />
<extend-property name="user.agent" values="safari" />
<extend-property name="user.agent" values="opera" />
<extend-property name="user.agent" values="ie9" fallback-value="ie8" />
<property-provider name="user.agent" generator="com.google.gwt.user.rebind.UserAgentPropertyGenerator"/>
Therefore gecko is not a valid value for user.agent in my case, and if I use gecko1_8 it compiles for Firefox fine.
这篇关于GWT模块XML - 如何重新定义和使用多个用户代理的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!