另一(yī)個應用時代崛起:見證PWA書(shū)店樂寫曆史

發布時間:2018-04-19 16:36

iOS上的“超級小(xiǎo)程序”

蘋果在春天正式推送的iOS 11.3帶來了不少關暗重要更新,大(dà)家比較熟悉的就是電(diàn)池管理和關閉降頻(女議pín)功能,不過對于很多關注前端技術和Web App老樹的用戶應該注意到了,蘋果iOS 11.3已經悄內刀悄加入了對“漸進式Web應用”(PWA)這一(yī)系列新技術的基本支持。

這可能是促進行業發展的一(yī)項重要改變,隻是蘋果自己并沒有大(dà)肆聲中金張,普通用戶也未必這麼關心。

但如果說這項改變的意義,不亞于6、7年前我(wǒ)(城讀wǒ)們讨論移動App擁有多大(dà)的潛力,如今,新的App發展已經鋪北快好了道路。

PWA,全稱Progressive Web App村舊,不是特指某一(yī)項技術,而是應用了對志多項技術的Web App。其核心技術包括App Manifest、Ser頻兒vice Worker、Web Push學河、Credential Management API,河一等等。其核心目标就是提升Web App的性能,改善Web App的用戶體(tǐ)驗

PWA所倡導的一(yī)些核心技術特性有:

  • 可以在主屏幕上創建圖标

  • 可以離(lí)線運行

  • 可以利用後台線程與服務端通訊

  • 對搜索引擎友好

  • 響應式界面,支持各種類型的終端和屏幕

  • 方便分(fēn)享,用戶可以方便地把URL地址分(fēn)水鄉享出去(qù)

簡而言之,PWA可以通過浏覽器Safar在我i将支持網頁或者網頁服務添加到桌面,生(shē西熱ng)成一(yī)個圖标,形成一(yī)個Web App,它那水和從App Store安裝原生(shēng)App相同,點擊圖标即可開跳頻(kāi)啟,不會出現地址欄也不需要你再輸入地址,它農有還能在離(lí)線狀态下(xià)使用,原生(shēng)App可以做到的離電錯(lí)線使用、消息推送、後台自動更新等,W近服eb App通過PWA也可以具有類似的能力。而且它還免去(qù)了A醫服pp的安裝過程,可以用理解為一(yī)種以浏覽器為入口的“小(xiǎo)程序”不看。

再說一(yī)句大(dà)通俗話(huà):你可以将支持的某個網頁直接信西生(shēng)成一(yī)個App放(fàng)在iOS桌面上,并美司且以後都像打開(kāi)App一(yī)樣打開(kāi好分)了,以後這種形式還會擴展到更多。

PWA的發展正是這兩年開(kāi)始的事,蘋果雖然默不作聲報相但是對PWA的發展一(yī)直保持着關注,從去(qù)年年底開(購村kāi)始就不斷有消息預測蘋果iOS——更确切的說是蘋果Safari會支持小那PWA,不過我(wǒ)(wǒ)們沒想到它這麼快就照答來了。

PWA隻能在浏覽器或Web平台的安全和執行模型中(zhōng)運謝麗行,所以我(wǒ)(wǒ)們要通過Safa水唱ri來找到:

打開(kāi)Safari,前去(qù)一(玩高yī)個支持PWA的站點,點擊下(xià)方分(fēn)享圖标,你會發間厭現分(fēn)享項上有一(yī)個“添加到主屏幕”,戳它,點離答擊确定,主屏幕上就會出現一(yī)個長得跟原生(shēng)App很像的App遠市圖标(有些已經推出獨立App的會在角标上注東人明網頁版)。

以後你但凡需要到這個網頁,隻要點開(kāi)這個App厭北圖标就完事了,不用通過Safari,它的啟動和原村光生(shēng)App的速度一(yī)樣快,而且最大(dà森火)的優點是可以在網絡很不好的情況下(xià)流暢地開(kāi)啟和使用。

是不是感覺,添加Web App很像添加Web嗎慢收藏夾?

但既然它能夠叫做App,能做到事情自然還有很多。制服

iOS平台上PWA的可用能力有:

  1. 訪問地理位置

  2. 使用傳感器數據(磁力計、加速計、陀螺儀)

  3. 訪問攝像頭

  4. 音頻(pín)輸出

  5. 語音合成(僅限使用耳機的情況)

  6. 調用Apple Pay

  7. WebAssembly、WebRTC、WebGL她跳以及很多帶标簽的實驗性功能

PWA還是小(xiǎo)容量iPhone用話飛戶的福音,随着谷歌地圖、微軟翻譯等引擎網站和土子京東等電(diàn)商(shāng)網站都支但事持PWA之後,我(wǒ)(wǒ)們手機中(zhōng)有大(dà)量門器的應用可以轉為PWA代替,不用再從App Store下(xià)載動辄幾森遠百M大(dà)小(xiǎo)的應用,直接用幾十M的Web App取代即報爸可。大(dà)量内容商(shāng)們也車河可以從原生(shēng)App的開(kāi輛黑)發和維護中(zhōng)解脫出來,做一信報(yī)個PWA就搞定,還不用通過App信事 Store磨人的上架審核。這種形式同時也很适合商(shāng)家、企業科能對内對外(wài)的一(yī)些移動服務管理。

iOS端PWA才剛剛起步,目前體(tǐ)驗起來隻吧員能說相當原始,前面講了,除了少數API調微秒用以外(wài),它就跟加了個收藏夾那麼弱雞,不能保持後台,每次退出都要事計重新打開(kāi),另外(wài)它還有很短身多暫時實現不了的功能(但是别的平台比如Android端大歌數(dà)部分(fēn)都實現了)。

iOS平台PWA暫時實現不了的功能有:

  1. Web App可以存儲脫機數據,但是文件大(dà為是)小(xiǎo)上限為50 Mb。

  2. 目前還未開(kāi)放(fàng)功也月能:藍(lán)牙、序列号、Beacon信又志标、Touch ID、Face ID、ARK紅愛it、高度計、電(diàn)池信息等等。

  3. 如果用戶長時間内沒有使用某個Web App,iOS自動對其進行清空。應不短用圖标依然會顯示在主屏上,但是需要重新下(x又見ià)載數據。

  4. 無法訪問私有信息(聯系人、後台定位),也無法訪問原生(shēn美又g)社交應用。

  5. 不能進行應用内付款。

  6. 在iPad上,無法與其他應用使用側拉或分(fēn)屏到間顯示,始終占據整個屏幕。

  7. 無推送通知(zhī),無圖标标記,無法與計兵Siri集成。

蘋果對PWA的态度也還很微妙,支持是支持了,給予的權限事音和接口都非常少,随着PWA本身越來越被看重,包些讀括蘋果也已經在緻力着桌面端和移動端相統合吃訊,而PWA可以說是其中(zhōng)的一(yī)個關鍵,相黑就信他們會展現更開(kāi)放(fàng)的态度。至少現在,我(wǒ行吃)(wǒ)們已經可以在Android、Windows、i藍街OS幾大(dà)系統上認識和使用PWA了,這個“綠火超級小(xiǎo)程序”今後前景可能比我(wǒ)(wǒ)們現在想象很我的更加寬廣。

Web體(tǐ)驗突破之年

早在10年前,蘋果就已經在尋找一(yī)種基于浏覽器上開(kāi些區)發應用的方法,那個時候,App Store都還沒有被動區設計出來。蘋果前CEO史蒂夫·喬布斯2007年WWDC上鐵年提出了為初代iPhone開(kāi)發應用的概念,當時所公布對靜的,就是Web App——可以從主屏直接啟動的Web應用。

可惜當時這個理念沒有引發太大(dà)關注,反而是匠自後來原生(shēng)SDK的App應用蓬勃發展起來,互聯網公照師司更願意投入人力在原生(shēng)App的開(kāi)發上,而忽略技算了Web。因此對原生(shēng)App大(dà)量的需求出現,占據了移動時代文也的主流地位,Web似乎就要被App所取代。

然而Web一(yī)直沒有放(fàng)棄努力,早在20去子14年,W3C公布就公布過Service Worker的相關草案,其生開的(shēng)産環境在2015年被Chrome支持,随後PWA得到了完善內謝。

自2015年以來,PWA相關的技術不斷升級優化,在用戶體(服科tǐ)驗和用戶留存兩方面都提供了非常好的解決方案。PWA可以将Web和App各自的優勢融合在一(yī)起:漸進式、可響應、可森化離(lí)線、實現類似App的交互、即時更新、安全、可冷草以被搜索引擎檢索、可推送、可安裝、可鍊接。

對于原生(shēng)App來說最大(dà)的痛點是由于其天生(shēng)地技封閉的基因,内容無法被索引,相對于原生(s見的hēng)App的封閉,PWA卻是完全開(kāi)放(fàng)鐘是的——PWA現有的所有技術都是遵循W3C的标準,學現完全開(kāi)放(fàng),因此能夠快速被站點接筆術受、被浏覽器快速支持。

而随着移動互聯網的發展,用戶下(xià)載App的熱情也逐漸減弱從草,積極探索新App已經成為過去(qù)式了,80%的用戶的80%的時間被你在少量超級App占據,原生(shēng)App的分(fēn)發成本将越來越木關高。可以說原生(shēng)App的發展肯定會遭遇瓶頸,這低并且這幾年正在接近這個瓶頸,Web看到了自己的機遇來離,PWA以及支撐PWA的一(yī)系列關鍵技術應運而生(shēng些放)。

除了蘋果Safari是陣營新丁之外(wài),各家浏覽器廠術間商(shāng)從2017年開(kāi)始大(dà)力支持PWA,主流浏覽器基愛行本上PWA已經支持得很好了,不如說浏覽器廠商(shāng對老)們唯恐自己沒跟上标準而被淘汰。全世界很多大(dà)了體站點也已經跟上步伐,紛紛支持PWA。

到眼下(xià)的2018年,全球頂級浏覽器廠商(shān議子g),Google、Microsoft、Apple已經全數看議宣布支持PWA技術,這預示着,移動端App将會迎到紙來全新的Web時代,以後對PWA的需求還會大(水習dà)量增加。

當然,PWA不會殺死原生(shēng)App,這個問題我(wǒ)(w喝喝ǒ)們之前和大(dà)家讨論微信小(xiǎo)程序的時候就已經談過那資,PWA會前所未有地擴展App的外(wài)延,也不可避免的南風改變現有的App理念,打破獨立封閉原生(shēng)的界限,讓更多來自外(w子兵ài)圍的“App們”(包括PWA,也包括小(xiǎo)程序)同台競技,讓用戶街子在桌面端和移動端上體(tǐ)驗到更少割裂感,更強我訊的關聯性,更強大(dà)的搜索和牽引,更快速地要花獲取到一(yī)切你所想要的,這才像真正的未來App厭了。

有希望的土地才百花盛開(kāi)

前面我(wǒ)(wǒ)們拿了“小(xiǎ裡了o)程序”來作對比,又(yòu)說了PWA的前景,其實微信雪是小(xiǎo)程序(還有支付寶小(xiǎo)程序等)就是PWA技術應信日用的一(yī)個範例。隻不過廣義标準的PWA支持更大(dà)平台——員城Web,而小(xiǎo)程序們更依托于它們各自的平台。

從微信小(xiǎo)程序發展了一(yī)年多然而并沒有涼,我高懂(wǒ)(wǒ)們就可以看出小(xiǎo)程序背後的需求能力,當然也小愛可以說是對PWA的需求。根據騰訊提供的數據,小(xiǎo)件內程序連接着10億用戶與200多個類目的商(shā街高ng)家,目前已經擁有1.7億日活用戶、也在上線58萬個小(xiǎo)程序、吸引了超過1區樂00萬個開(kāi)發者、2300個第三方開(慢票kāi)發平台加入。

2018年,微信小(xiǎo)程序還将有一(yī)個野心勃勃的計劃:将支持但算各個App直接打開(kāi)小(xiǎo)程序。

你沒有聽(tīng)錯,簡單來說,在不久以後,所有的App裡面都物工可以看到小(xiǎo)程序的身影。這是一(yī)個說也大(dà)設計,将把微信打造成全面串聯移動端應用的一司開(yī)個港口,同時又(yòu)讓各個App之間,有了店科一(yī)道便捷的傳送門。這個門不再是諸如App Store和Google P樂看lay這樣的應用商(shāng)店(diàn),而是通了是過小(xiǎo)程序,無限遠和無限多地跳轉。

比如,用戶在使用旅行攻略App,會需要訂機票(piào)、酒店(要小diàn)、打車(chē)等服務,有時候一(yī)個App可能不能站白全包括,按照現在的技術就要重新下(xià)載船日一(yī)個App來查看其他項目。但如果以後App可以打樂電開(kāi)小(xiǎo)程序,那麼不需要退出也不需要去(qù)應用商(shā熱頻ng)店(diàn)找,小(xiǎo)程序就能幫你解微地決。

這無疑是一(yī)種生(shēng)态上的破壁,也應該是App的曆史演變結民南果,我(wǒ)(wǒ)們将見證這一(yī)過程。