2010-08-05 64 views
0

我開發了一個wap遊戲門戶。我的問題是完美地檢測手機設備。我的遊戲提供商提供我所支持的手機列表如下:使用Tera-WURFL的移動手機檢測

Nokia6300,SGH-X200,MOT-C261,SIE-CX70,SAMSUNG,SGH-Z140

所以,我必須檢測爲所支持的遊戲特定的wap用戶。

我可以很容易地檢測到使用以下命令諾基亞終端手機:

require_once('../TeraWurfl.php'); 
$wurflObj = new TeraWurfl(); 
$matched = $wurflObj->getDeviceCapabilitiesFromAgent(); 
$brand_name = $wurflObj->getDeviceCapability("brand_name"); 
$model_name = $wurflObj->getDeviceCapability("model_name"); 
$handset=$brand_name. $model_name; 

// Nokia6300,Nokia6600等

但問題是siemence,摩托羅拉,三星的一些集和大量的別人的。 設說用戶代理:

SIE-CX70/36 UP.Browser/7.0.2.2.156(GUI)MMP/2.0資料/ MIDP-2.0配置/ CLDC-1.1

我提供的型號名稱:CX70和品牌名稱:西門子。 所以,如果我連接,然後得到值:SiemensCX70。但實際是:SIE-CX70。 所以,信息不匹配。

現在我的問題是如何檢測完美的手機。 請幫我檢索實際信息。

感謝 里亞德

回答

0

你可以利用的UAProf,RDF格式的URL描述的手機功能,與用戶代理在一起,因爲的UAProf並不總是在頭存在。我不會說這是完美的,因爲總會有一些例外。我看到一個格式無效的RDF文件。但它可能對您的情況有幫助。

請參考這個簡單的例子(的Restlet):

http://shengchien.blogspot.com/2010/09/restful-mobile-detection.html

1

我想你已經想通了這一點,有沒有簡單的方法來做到這一點,你需要保持在一個映射你的將WURFLMODELNAME映射到客戶給出的實際手機。這樣您可以更好地顯示手機名稱。確保您可以進行多對一的映射,以便您可以將1個或多個WURFL型號名稱映射到1個手機顯示器名稱。