1 回答

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊
如果你曾試過(guò)舉著手機(jī)站到椅子上以求獲取更好的信號(hào),或是等待30秒還沒(méi)刷出一個(gè)頁(yè)面,那你一定深有體會(huì):如今的用戶體驗(yàn)仍存在許多不足之處。我們花費(fèi)大量時(shí)間用無(wú)數(shù)會(huì)話、用戶測(cè)試、數(shù)據(jù)分析的接口來(lái)堆積我們的眼球,卻只是得到了被發(fā)射塔產(chǎn)生的怪異信號(hào)所削弱的體驗(yàn)。
也許用戶從3G切換到WiFi了,也許電量很低了,也許只是天色變暗了,不管是什么情況,現(xiàn)實(shí)世界因素都能輕易阻撓你原本的好意,并讓你的用戶感到沮喪和憤怒。
在設(shè)計(jì)時(shí)考慮現(xiàn)實(shí)世界因素并不是新概念了。環(huán)境設(shè)計(jì)可以追溯到至少公元前500年,古希臘人當(dāng)時(shí)就建造了用太陽(yáng)能取暖的房子,它基于兩個(gè)簡(jiǎn)單事實(shí):現(xiàn)實(shí)世界是存在的,而且你無(wú)法控制它。
當(dāng)用戶與你的設(shè)計(jì)進(jìn)行交互時(shí),你也無(wú)法控制所有因素,只能承認(rèn)它們的存在,為它們做好計(jì)劃,我把這些稱(chēng)為設(shè)計(jì)條件。有的設(shè)計(jì)條件是不變的,比如一臺(tái)手機(jī),你擺著或用著,它都是那個(gè)模樣兒。而有的設(shè)計(jì)條件是會(huì)變化的,比如能耗、光線、信號(hào)強(qiáng)度等,它們是潛在的且有變化趨勢(shì)的,即使是在單一的訪問(wèn)過(guò)程中,甚至是在頁(yè)面加載中,都會(huì)改變。
一年前,關(guān)于用戶體驗(yàn)的問(wèn)題,我還沒(méi)有太多的答案,因?yàn)楫?dāng)時(shí)這些設(shè)備API并未具備。但現(xiàn)在我們可以開(kāi)始為改善用戶體驗(yàn)做些事了,這要感謝設(shè)備API的創(chuàng)建者。
設(shè)備API是什么?
在2011年7月,當(dāng)時(shí)Mozilla和Andreas Gal博士創(chuàng)建了Boot2Gecko,這是個(gè)完全基于Web技術(shù)的操作系統(tǒng)。有趣的是,Mozilla在這個(gè)OS中還創(chuàng)建了允許瀏覽器訪問(wèn)設(shè)備的JavaScript API,這就開(kāi)啟了設(shè)備API。
一些API還停留在Boot2Gecko操作系統(tǒng)中,但大量的工作已經(jīng)轉(zhuǎn)移到W3C進(jìn)行標(biāo)準(zhǔn)化了。探討這些API,以及它們對(duì)提升產(chǎn)品在現(xiàn)實(shí)和環(huán)境設(shè)計(jì)條件下的潛力,將是我們今天要專(zhuān)注的工作。
電池狀態(tài)和網(wǎng)絡(luò)信息 Battery Status and Network Information
響應(yīng)式設(shè)計(jì),為我們省了不少麻煩,但它也帶來(lái)像前端資源管理之類(lèi)的新問(wèn)題。比如要如何處理圖片去適應(yīng)小屏幕或窄帶寬這些情況呢?
如果僅是“小屏幕獲取小圖像”的簡(jiǎn)單問(wèn)題,響應(yīng)式圖片問(wèn)題幾乎完全可以通過(guò)圖片元素來(lái)解決。但這樣就假定了小屏幕下要提供更小的圖片以適應(yīng)其尺寸和帶寬限制。我們開(kāi)始意識(shí)到,如此說(shuō)來(lái),顯示尺寸跟可用帶寬量就幾乎無(wú)關(guān)了。
在最佳條件下,每個(gè)人的設(shè)備都有著閃電般的快速連接,100%的電量??墒褂靡苿?dòng)設(shè)備的人越多,這個(gè)可能性就越小,更多的時(shí)候,這些條件將影響用戶的體驗(yàn)。假如用戶是通過(guò)快速連接隨意地瀏覽,低分辨率圖像就不會(huì)是最好的體驗(yàn)。反之,假如用戶是通過(guò)蝸牛般連接,且電量極低了,下載大圖片將會(huì)耗死他的手機(jī)。
正是這樣的情況,才使電池狀態(tài)和網(wǎng)絡(luò)信息的API顯得如此有趣。
電池狀態(tài)API可以告訴你設(shè)備的剩余電量和電量趨勢(shì)(上降或上升,即放電或充電),。這些信息不僅在加載時(shí)可捕獲,通過(guò)電池狀態(tài)關(guān)聯(lián)的事件也可捕獲。目前規(guī)范的事件包括:onchargingchange,onchargingtimechange,ondischargingtimechange,onlevelchange。
再加上網(wǎng)絡(luò)信息API,那就更有趣了,它可讓你挖掘到設(shè)備的帶寬相關(guān)信息。目前的草案規(guī)定,網(wǎng)絡(luò)信息API會(huì)返回兩個(gè)方面的信息:連接速度(單位MB/秒)和是否為ISP的計(jì)量帶寬(真/假的布爾值),這是我們?cè)跒g覽器中篩選資源和管理帶寬所需的信息。當(dāng)跟蹤到用戶離線時(shí),這個(gè)連接API也可以返回0。
網(wǎng)絡(luò)信息和電池狀態(tài)各有妙用,當(dāng)它們兩個(gè)組合,不僅可以幫助你在頁(yè)面初始加載時(shí)管理資源,隨著時(shí)間推移,連接或電池狀態(tài)會(huì)變化,接口也會(huì)修改相應(yīng)的信息。您甚至可以運(yùn)行能量測(cè)試,估算用戶在目前的條件下電量還能用多久(正如汽車(chē)上的油量可行駛公里數(shù)的估算)。你不會(huì)得到像“Facebook正在耗電中”的具體信息,但你可以知道是否有足夠的電量來(lái)完成你的應(yīng)用程序中的某個(gè)任務(wù)。
這兩個(gè)API,特別是它們的組合,可能會(huì)是我們讓設(shè)計(jì)更好地處理現(xiàn)實(shí)場(chǎng)景的一手資源。他們使我們能夠檢測(cè)性能瓶頸和探測(cè)設(shè)備(還記得圖片處理的問(wèn)題嗎?)。又有另一對(duì)讓瀏覽器變得更強(qiáng)的API脫穎而出了:環(huán)境光傳感器和接近傳感器的API。
環(huán)境光傳感器 Ambient Light Sensor
環(huán)境光傳感器API使用設(shè)備的光傳感器來(lái)告知當(dāng)前的環(huán)境。當(dāng)然,這個(gè)API的限制是設(shè)備必須有光傳感器的裝置,不管是攝像頭或其他類(lèi)型的傳感器,只要有就可以。在初始加載時(shí)和通過(guò)ondevicelight事件都可以捕獲到環(huán)境光的亮度級(jí)別,類(lèi)似上面談到的電池狀態(tài)API。
這個(gè)環(huán)境光傳感器API比較獨(dú)特,它不像普通網(wǎng)頁(yè)使用像素或百分比單位,它的返回值是以LX為單位的。LX是標(biāo)識(shí)照度的國(guó)際單位。其實(shí),在發(fā)現(xiàn)這個(gè)API之前,我從來(lái)沒(méi)有聽(tīng)說(shuō)過(guò)LX,現(xiàn)在它引入了,設(shè)備層居然也支持它,讓我也感覺(jué)上流了。
環(huán)境光線感應(yīng)器API有助于提升電子閱讀器的體驗(yàn),比如Kindle,可以通過(guò)探測(cè)到的室內(nèi)光線信息,再相應(yīng)地調(diào)整配色、排版,或其他設(shè)計(jì)元素,就可以提供更舒適的閱讀體驗(yàn)了。
近物體傳感器 Proximity Sensor
近物體傳感器API,它使瀏覽器也可以近場(chǎng)通信(NFC),這將是我們今后的目標(biāo),目前規(guī)范還未定,而且大多數(shù)設(shè)備還未具備必要的傳感器。目前僅有少數(shù)智能手機(jī)含有NFC技術(shù), 直至我們?cè)趇Phone上發(fā)現(xiàn)它,它可能有兩個(gè)版本。
如果用戶的設(shè)備裝有接近性傳感器,您可以通過(guò)它的NFC信息來(lái)探測(cè)附近的物體,這實(shí)在是太棒了! 這個(gè)API包含一個(gè)ondeviceproximity事件,當(dāng)有物體在傳感器的探測(cè)范圍內(nèi)時(shí)可觸發(fā)。
由于目前的傳感器還不穩(wěn)定,所以W3C不建議測(cè)量物體的精確距離。但你仍然可以突破推進(jìn)用戶體驗(yàn)的極限,只需敲動(dòng)幾下鍵盤(pán),把自己從瀏覽器的狹隘環(huán)境中解放出來(lái),把現(xiàn)實(shí)世界的互動(dòng)對(duì)象、光敏感性、連接信息、和能源消耗的束縛通過(guò)一個(gè)接口釋放出去。
推動(dòng)環(huán)境設(shè)計(jì)
將外部因素加以考慮的網(wǎng)絡(luò)環(huán)境設(shè)計(jì)概念,僅僅是設(shè)備API的起步。
后續(xù)將會(huì)有更多的可用API,雖然以住的經(jīng)驗(yàn)告訴我們,在每一個(gè)瀏覽器將會(huì)有所不同,正如你的每個(gè)房間不可能都一模一樣,我們可以好好利用這些API,以創(chuàng)新的方式融入到你的應(yīng)用程序中去。就像連接、電量,以及其他情況的變化,用戶都可以在您的網(wǎng)站中體驗(yàn)到。
對(duì)大多數(shù)人來(lái)說(shuō),處理各種瀏覽器的兼容是個(gè)全職的工作,所以我們要有質(zhì)保測(cè)試。接受這種混亂,而不是花時(shí)間打擊它,才是推進(jìn)網(wǎng)絡(luò)和積累成功經(jīng)驗(yàn)的關(guān)鍵。盡情地發(fā)揮你的優(yōu)勢(shì),不斷增強(qiáng)你的用戶體驗(yàn)工具,才是推動(dòng)Web體驗(yàn)的正路。
- 1 回答
- 0 關(guān)注
- 1759 瀏覽
添加回答
舉報(bào)