2010-01-16 135 views
2

我需要使我的網站在黑莓上運行良好,我還沒有花太多精力來完成這項工作,但我有幾個問題,谷歌正在努力。asp.net網站手機支持

我讀過有關檢測布勞爾型和修改asp.net控件的默認行爲here

我怎麼會去供應歧樣式表特定的瀏覽器,我應該只是做到這一點?

if (Request.Browser.Browser.ToString() == "blackberry") //pseudocode 
{ 
    Response.Write("bb.css"); 
} 
else 
{ 
    Response.Write("bb.css"); 
} 

這將正常工作,但我覺得有一個更好的方法,我敢肯定,我已經知道了,在過去的東西,但我似乎無法召回。

我也在考慮一個response.redirect到一個黑莓的不同頁面,目前我會用類似的方式實現。

任何想法或建議。

回答

2

檢查了這一點

http://mdbf.codeplex.com/

而且nerddinner.com在http://nerddinner.codeplex.com/

+0

雖然看起來沒有適當的擴展性,但我確實必須給實際項目一個小小的讚賞:手機迄今爲止記錄了近300個不同的功能和特性,並且數量在不斷增長。例如,處於其當前狀態的API將無法區分當前可用的三種不同的地理定位API:s。呃,我聽起來太消極了 - 我不是故意的。 – Esko 2010-01-16 17:58:47

1

一般是可能的瀏覽器假裝這是一個不同的(這是用來例如,通過歌劇這是默認設置假裝它是一個IE來克服有問題的網站的一些限制)。我個人認爲黑莓和類似設備很容易檢測,所以沒有理由不像你的樣品那樣做...... Vivek的網站看起來也不錯;)

1

儘管與你的實際問題沒有直接關係,您可能需要閱讀我在標題「識別手機」下以「here」的答案所寫的內容。

你應該真正在尋找的是一種檢測當前設備功能的方法,如果你想正確地做到這一點,男孩是否有很多工作要做。正如我在其他答案中所說的那樣,問題在於,由於用戶代理字符串的歷史,他們很長一段時間都不可靠。

如果手機整體不會成爲您的主要平臺,您不應該深究這一點,找到一些可行的方法,比如檢查用戶代理字符串是否包含「Blackberry」,並對此表示滿意。但是,如果你確實想要做到這一點,那麼你必須開發一個功能檢測框架,以便爲你完成所有可能的組合和排列組合 - 當沿着這條路走下去的路上並不容易。

對不起,我覺得有必要成爲這樣一個狂熱者。

+0

我想我很幸運,因爲它是一個企業內部網站,我只需要支持黑莓,沒有別的,謝謝! – 2010-01-16 18:12:04