如何使用wurfl检测桌面浏览器与移动设备?

时间:2010-04-13 14:13:01

标签: mobile wurfl

我计划在Web应用程序中使用Wurfl来区分移动设备和桌面浏览器。来自net.sourceforge.wurfl.core.utils的isMobileBrowser(String userAgent)似乎是相应的功能。

然而,看一下1.0.1-rc3的源代码我可以看到,如果用户代理字符串不包含“Tablet”字,它总是返回false。我正在阅读这篇文章http://wurfl.sourceforge.net/newapi/,我想使用那里描述的模糊匹配来识别设备。我可能有可能使用错误的功能吗?如果是这样的话,请指点我正确的方向吗?

另外,您知道在哪里可以找到1.0.1-rc4的源代码吗?

4 个答案:

答案 0 :(得分:4)

您必须使用这些功能:

if(is_wireless_device=false and device_claims_web_support=true) {
the request is from web browser
}

via

答案 1 :(得分:2)

  

if($ device-> getCapability('is_wireless_device')=='true')   {//这是移动设备}   其他   {//这是针对浏览器的}

这就是我用来做我的移动设备和浏览器检测...目前无缝工作。

答案 2 :(得分:0)

我们调整了wurfl.xml文件以检测桌面。

<device id="generic_web_browser" user_agent="DO_NOT_MATCH_GENERIC_WEB_BROWSER" fall_back="generic">
    <group id="product_info">
      <capability name="has_qwerty_keyboard" value="true"/>
      <capability name="pointing_method" value="mouse"/>
       <capability name="device_os" value="**Desktop**"/> <!--Added desktop OS-->
      <capability name="model_name" value=""/>
      <capability name="can_skip_aligned_link_row" value="true"/>
      <capability name="device_claims_web_support" value="true"/>
      <capability name="is_wireless_device" value="false"/>
      <capability name="brand_name" value="generic web browser"/>
      <capability name="can_assign_phone_number" value="false"/>
      <capability name="release_date" value="1994_january"/>
    </group>

我们正在使用WURFL和Liferay插件,这对我来说很好用

答案 3 :(得分:0)

截至目前的Wurfl版本,有一个“is_tablet”参数。 Wurfl Help Doc