如何检测所有使用Wurfl的iOS设备?

问题描述:

我们为我们的网站创建了一个iOS应用程序,我们希望将所有iOS访问者重定向到iTunes商店。我们的网站使用配置和工作的Zend框架wurfl。现在如何检测所有使用Wurfl的iOS设备?

,我们尝试通过浏览器名称

$bootstrap = $this->getInvokeArg('bootstrap'); 
$view = $bootstrap->getResource('useragent')->getDevice()->getBrowser(); 
if($view == 'Chrome') { 
    $this->view->mobile = true; 
} 

CTO @ScientiaMobile和WURFL创作者在这里

重定向正如你可能要考虑51Degrees.mobi一个备选答案。尽管它将涉及运行IIS .NET服务,但请参阅blog post以了解PHP集成。

假设你设置一个WURFL经理已经:

$device = $wurflManager->getDeviceForUserAgent($_SERVER["HTTP_USER_AGENT"]); 

if ($device->getCapability("device_os") == "iPhone OS") { 
    // device is an iPhone or iPod 
} 

iOS设备可以通过检查设备操作系统的能力进行鉴定。我建议你检查出http://wurfljs.com/

简而言之,如果导入一个微小的JS文件:

<script type='text/javascript' src="http://wurfljs.com/wurfl.js"></script> 

,你将留下一个JSON对象,看起来像:

{ 
"complete_device_name":"Google Nexus 7", 
"is_mobile":true, 
"form_factor":"Tablet" 
} 

(这是假设您使用的是Nexus 7),您将可以执行以下操作:

if(WURFL.is_mobile){ 
    //dostuff(); 
} 

作为重要的一项,我们走出了通过利用javascript识别iPhone实际模型的方式(这允许我们利用通过纯粹的HTTP头分析不可用的信息)

请注意,我为提供这项免费服务的公司。谢谢。