中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Android 5.0 技術(shù)新趨勢

2018-07-20    來源:編程學習網(wǎng)

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

  由于 Android 的版本分裂比較嚴重,整個新系統(tǒng)升級可能需要一兩年甚至更長時間。所以目前使用 Android 5.0 的大部分是喜歡嘗鮮的用戶,同時現(xiàn)在市場上能夠很好支持 Android 5.0 的應用又很少,如果開發(fā)者能捕捉這個機會,從這些用戶那里得到更好的反饋,或者更好的證明機會,都是非常有價值的。

  在 Android 5.0 發(fā)布之后,我認為有幾個地方可以讓開發(fā)者做得更好,比如可以建立一個更好看的應用,或者能夠解決在應用中最大的性能問題——電量消耗的問題,等等。同時 Android 5.0 也帶來了更多的可能性,讓開發(fā)者可以做出不一樣的應用,以及能夠在更多的設(shè)備上部署服務。下面我分別介紹一下我對 Android 5.0 可能帶來的技術(shù)趨勢的看法。

 更美的應用——Material Design

  在 Android 5.0 的宣傳中強調(diào)最多的一個亮點就是「Material Design」,從設(shè)計語言來講,這個特點是能在將整個素材鋪平的同時還遵循一定的物理材質(zhì)的需求。這樣的設(shè)計可以讓應用感覺更活潑、具有更豐富的顏色, 有無處不在的陰影,以及動畫效果更真實等等。對于技術(shù)來說,Material Design 解決了兩個非常大的問題,其一是「陰影」,它所有的陰影都是默認系統(tǒng)實現(xiàn)的——只要配置 Z 軸的高度,所有的陰影都可以通過系統(tǒng)默認實現(xiàn)。

  另一個是「動畫」,可以說 Android 5.0 將動畫應用到了各個角落,實際上在這方面 Android 做了相當多的技術(shù)工作,使這個效果不是簡單的貼圖,實現(xiàn)出來的效果有點像游戲里面的投影,也就是真實的投影效果。

  為了實現(xiàn)這些效果,Android 曾經(jīng)嘗試過不同的方案,最后使用的方案是當 Z 軸比較矮的時候,使用一個「面光源」,相當于一面的光打下來,如果 Z 軸比較高的時候,可能會加一個「點光源」,盡可能使整個投影變得真實,當然它沒有辦法支持在圖形學中比較復雜的「光線追蹤」——連續(xù)的反射效果,因為有個 試驗結(jié)果是只要開啟「光線追蹤」 10 秒就會導致手機變得滾燙,以現(xiàn)在的手機性能還沒有辦法很完美地支持。

  而在這一技術(shù)的背后有個發(fā)展過程,大約是在 2001 年的時候,Android 開始做硬件加速技術(shù),它的計算同樣以硬件加速,會在 GPU 上進行差值計算,用以實現(xiàn)陰影特效,動畫也是同理,F(xiàn)在 Android 5.0 將動畫做到無所不在,比如給一個頁面做了陰影,陰影的抬升有動畫,界面的切換有動畫,每一次點擊、每一次拖動、每一次滾動都有動畫。

  現(xiàn)在最典型的動畫是「水波紋」,現(xiàn)在 Android 5.0 上點任何東西都有一個水波漾起的動畫效果。當然,開發(fā)者也可以指定各種各樣的動畫,比如一些基于路徑的動畫和界面切換時的動畫,整個動畫的實現(xiàn)技術(shù)也是依 賴于 Android 在兩年前做的一個后臺的獨立渲染線程,它能夠?qū)崿F(xiàn)異步渲染這些動畫。

  對于老版本而言,如果想要實現(xiàn)類似的陰影效果或動畫效果,讓整個界面變得有動感,單靠自己的能力做是特別難的。Android 5.0 提供了所有的這些開發(fā)支持,只要用 Android 5.0 SDK,用一些支持包,就可以配上它的風格、調(diào)色板、以及一部分控件,配置一些動畫,就可以很快地建設(shè)出一個特別有「Material Design」風格的界面,F(xiàn)在真正支持「Material Design」的應用還比較少,如果用這樣的方式來構(gòu)建自己的產(chǎn)品,其實可以給那些偏 Geek 的用戶一個特別好的感覺。

 更省電的應用——Project Volta

  大家以前做 Android 開發(fā)的時候可能涉及最多的問題就是「為什么你的應用那么耗電?」其實整個耗電模型在 Android 模型里的計算是非常復雜的。Volta 這個項目就是要在 Android 5.0 解決耗電問題。這次的解決辦法還是很特別的——就是給開發(fā)者提供了能力,如果開發(fā)者能夠很好利用這些能力,就能在系統(tǒng)上面跑得更快。Android 提供的能力是新的后臺任務系統(tǒng),非常像 iOS 系統(tǒng),可以配置一組觸發(fā)條件,比如網(wǎng)絡變化、電量消耗到了什么程度、設(shè)備是不是進入了休眠狀態(tài),這些東西可以觸發(fā)一個后臺任務,這個后臺任務的執(zhí)行也是限 時的,如果在時限之內(nèi)沒有完成,系統(tǒng)會將其取消,這個過程特別像 iOS 整個的機制。它可能取代了類似常駐后臺、定時任務或者需要更復雜的策略才能保持后臺運行的東西,實現(xiàn)更省電的需求。

  更重要的內(nèi)容是 Project Volta 提供了一組調(diào)試工具,因為以前可以在 Android 上面調(diào)試內(nèi)存、調(diào)試界面等等,唯獨很難知道電量耗在哪兒了,這個調(diào)試工具加上可視化工具可以展現(xiàn)你的界面上各個元器件以及各個環(huán)節(jié)的耗電情況,例如在哪個 時間段的耗電量是最多的,這時候有什么應用在運行,什么設(shè)備是大量耗電的。通過這樣的分析,能夠更好地了解應用為什么耗電,幫助開發(fā)者解決問題。

 系統(tǒng)服務

  Screen Capturing

  每次 Android 新版本升級都伴隨著一件事就是將原來只有系統(tǒng)有的能力開放給了開發(fā)者,開發(fā)者可以用這些能力來建設(shè)不一樣的應用。 比如豌豆莢做過的一些嘗試,我們想做一些游戲截屏、錄屏或者是一些 OCR的分析,目的是想分析圖片里的一些的東西。這在 Android 老的版本里是不支持的,除非 Root 才能用的這樣的能力,但是新的系統(tǒng)服務已經(jīng)支持了截屏和錄屏。這樣的話,如果發(fā)揮你的想象力,要做一些游戲錄屏或者其他應用,這就提供了一個新的機會。

  App Usages

  應用的使用信息也是一樣的,我們原來想知道手機上那個設(shè)備用戶最喜歡用哪個應用,什么時候用,這些信息都沒有,現(xiàn)在 Android 5.0 提供了這樣的接口,開發(fā)者不僅可以知道用戶在各個應用上耗費的時間,甚至可以知道什么時候用什么時間,整個切換事件都是可以查到的,這些信息原來也只有 Android自己知道,在這個版本里這些信息全部開放給了開發(fā)者,這樣能夠更好地發(fā)揮開發(fā)者的想象。

  Recent Screen

  新的 Recent Screen 取代了原來的 Recent Tasks,特點是原來就像一個最近使用的應用列表,現(xiàn)在相當于最近使用的頁面列表。 對于豌豆莢來說,我們希望用戶不只是看到自己什么時候用了豌豆莢,而是看到用戶在豌豆莢里瀏覽了三個應用,可以隨時回到那三個應用里面,類似這樣的功能。 其實這樣可以給開發(fā)者提供一個更好的用戶入口,讓用戶回到你的應用時更方便,或者能力更強。

 更多設(shè)備支持

  Android 5.0 在更多設(shè)備上都有了支持,不僅在了手機上,現(xiàn)在可以伴隨著Android Wear、Android TV、Android Auto,這三個現(xiàn)在都有 SDK ,整個發(fā)展狀態(tài)還都比較好。

  Android Wear 已經(jīng)有了很多 App,Android TV 上也有很多游戲和應用,Android Auto 發(fā)布了第一版SDK。比如說在 Android 5.0 里面增強了通知欄,用戶看到手機上是一個普通的通知欄,但同樣的通知欄到手表上去看,比如打開 Android Wear,發(fā)現(xiàn)可以上下翻動、左右翻動郵件,在這樣的設(shè)備上能獲得一個更好的體驗,同樣它提供了 TV input Framework (TIF) 框架。

  比如對于流媒體來說,可以非常快速地把內(nèi)容部署在 Android TV 上,開發(fā)者做一個 Android TV 的 App,用戶可以在 Android TV 上用這樣的內(nèi)容。

  同樣,通過新的 MediaPlay Session 接口,可以方便地把用戶手機上的流媒體放到汽車上,可以實現(xiàn)一進汽車就自動播放、在汽車的車載系統(tǒng)上控制手機的內(nèi)容,這些新的接口其實都是提供了很多新的 機會。 現(xiàn)在這樣的 App 還偏少,比如目前看 Android Wear 的 App 可能做得最多的就是賣各種各樣的表盤,實際上這個方面還有很多的可能性,當然它是一個特別新的領(lǐng)域,存在著一定的未知性,如果現(xiàn)在看這樣的機會,可能給你 提供的是很多新的產(chǎn)品機會。

  以上就是我感覺目前 Android 5.0 對于移動開發(fā)需要關(guān)注的點,總體來說,如果需要做一個新產(chǎn)品,開發(fā)者需要看到一些新的技術(shù)可能性,看到一些新的技術(shù)的趨勢,希望這個分享能夠?qū)氖麻_發(fā)的朋友們有所幫助。

 作者簡介

  范懷宇,豌豆莢應用平臺技術(shù)負責人。范懷宇 2011 年初加入豌豆莢,先后負責過豌豆莢 Windows 2.0 版本、豌豆莢云服務等業(yè)務,目前負責豌豆莢應用平臺和基礎(chǔ)技術(shù)相關(guān)業(yè)務。范懷宇長期專注于 Android 相關(guān)技術(shù)的研究,著有《Android 開發(fā)精要》 一書。

標簽: 開發(fā)者 媒體 網(wǎng)絡 云服務

版權(quán)申明:本站文章部分自網(wǎng)絡,如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:喜歡Swift編程語言的人主要是初學者?

下一篇:Java 9特性