我目前正在開發一個帶有WebView組件的Android應用程序,該組件顯示一個專爲手機設計的網站,因此必須將x-wap-profile標頭髮送到站點以調整CSS和圖像大小。Android:如何獲得Android SDK中的UAProf值?
任何人都可以幫我找到UAProf設備設置嗎?
我已經進行了很多搜索,沒有成功。
任何幫助將不勝感激。
在此先感謝。
我目前正在開發一個帶有WebView組件的Android應用程序,該組件顯示一個專爲手機設計的網站,因此必須將x-wap-profile標頭髮送到站點以調整CSS和圖像大小。Android:如何獲得Android SDK中的UAProf值?
任何人都可以幫我找到UAProf設備設置嗎?
我已經進行了很多搜索,沒有成功。
任何幫助將不勝感激。
在此先感謝。
誰能幫我找到的UAProf設備設置?
沒有 「的UAProf設備設置」。
歡迎您使用的loadUrl()
在那裏你提供頭自己的一套,包括您所需的標題版本。請注意,這是在API級別8(a.k.a.,Android 2.2) - AFAIK中添加的,之前的Android版本沒有提供自定義標題的選項。
也歡迎您通過WebSettings
設置您的用戶代理字符串,如果網站有問題將使用而不是你想要的頭的。
UAProf的工作原理如下:當設備向服務器發送HTTP請求時,它會發送一些添加接受標頭。其中一個標頭提供了該設備的UAProf配置文件的鏈接,該設備位於服務器上,通常位於設備製造商處,或可能位於網絡運營商處。 UAProf還可以選擇發送覆蓋作爲接受頭文件的一部分,儘管我從未見過這種情況發生在野外,但無可否認,自從我開始研究UAProf以來,這已經很長時間了。
所以你的情況,你需要做的是要麼發送X-WAP姿態航向指向一個真實的UAProf配置文件,或者如果沒有這樣的配置文件存在,你需要寫一個。我沒有使用過的WebView組件 - 我做的服務器端java - 但它是可能的,如果您使用的是HttpURLConnection類設置X-WAP的輪廓是這樣的:
HttpURLConnection urlconn = (HttpURLConnection) url.openConnection();
urlconn.setRequestProperty("X-Wap-Profile",
"http://wap.samsungmobile.com/uaprof/GT-I8190.xml");
您可以在Open Mobile Alliance validator site.找到more UAProf profiles
回顧,似乎是沒有辦法從一個Android應用程序中訪問與設備相關的UAProf配置文件Android source code。不過,Android確實有一個單獨的API,android.content,爲應用程序提供有關設備的信息 - here's an example。不幸的是,一旦獲得了屏幕幾何圖形,您需要將其轉換爲配置文件,這需要一些工作。
另一種解決方案是,如果你可以get the device name from Android,那麼你可以交叉引用,即將設備名稱映射到配置文件的配置文件數據庫。我不認爲這樣的數據庫已經存在,但有可能構建一個。一個起點是OMA驗證器站點數據庫上的list of profiles。不幸的是,這已經過時了,因爲我多年來一直沒有在UAProf上工作過,但我用來生成列表的代碼在我編寫的Java UAProf庫DELI中可用。它向谷歌查詢最近的配置文件,但谷歌確實傾向於更新他們的網頁設計,所以它使用的刮板可能會被破壞。
在你這樣做之前,你要檢查網站是否會使用UAProf信息 - 也許你正在編寫網站,在這種情況下它會很好 - 但對於第三方網站,我懷疑很多人不使用UAProf,因爲UAProf配置文件的質量非常不穩定,如果他們使用設備信息,他們可能只是檢測用戶代理字符串,然後在諸如WURFL或類似的付費解決方案的策劃配置集合中查找它。
你好,馬克。我非常清楚UAProf機制的工作原理。我詢問是否有方法詢問該設備的應用程序是否在運行其UAProf URL。 – KaHa6uc 2013-05-14 12:30:43
嗨KaHa6uc,謝謝澄清,我已經更新了我的答案,希望它有用。有一些可能的解決方案..但不幸的是他們已知的是特別容易的。在實踐中,我不認爲UAProf被廣泛使用。舉例來說,據我所知,蘋果公司發佈的唯一UAProf數據就是支持彩信 - 請參閱http://www.apple.com/mms/uaprof.rdf - 而iPhone在沒有它的情況下似乎也能正常工作。 – 2013-05-16 01:38:21
我很感謝你的回答,但那不是我所需要的。但我同意沒有「UAProf設備設置」。 Cheerz – KaHa6uc 2011-05-23 09:54:21