當前位置:
首頁 > 最新 > 2017年Android 領域大事件回顧

2017年Android 領域大事件回顧

來自:開源中國

鏈接:oschina.net/translate/2017-year-in-a-review-android

原文:https://proandroiddev.com/2017-year-in-a-review-android-5f2cd8738790

2017 對於 Android 來說是了不起的一年。在這一年中,Android 發布了很多重大的公告,包括支持 Kotlin 這一領人振奮的新語言,以及使用 Neural 網路 API 和 ARCore 構建智能互動式應用等。

讓我們以 Android 開發者的視角來快速回顧一下 2017 年中所有值得注意的 Android 公告。



Android 開發者早就已經對 Java 語言樣板化的代碼厭倦了,而幾年之前,少有公司和開發者會去尋找其它可供構建 Android 應用的選擇,直到他們遇上了 Kotlin。

自此這種富有魅力的語言就不斷地開疆擴土,很快在5月17日 Google 就宣布了 Kotlin 為 Android 開發的官方語言。

至於後面發生了什麼,地球人都知道 ;) Kotlin 萬歲!

有趣的事實: Android Studio 3.0 中有超過 17% 的項目使用的是 Kotlin

Kotlin 語言風格指南

隨著 Kotlin 的發展漸成燎原之勢,JetBrains 的 Google 和 Kotlin 團隊發布了包含了在使用 Kotlin 構建 Android 應用時可以遵循的一系列規則。

在 Android 上開發 Kotlin 代碼的官方指南



之前,Google 從來都沒有就哪種架構適合用來構建 Android 應用發表觀點,或者給出推薦做法。

不過在 2017 年他們終於決定用《架構組件與指南》來告訴大家他們推薦使用什麼架構。

架構指南

《架構指南》是一系列的指導意見,定義可以來構建穩定,可維護和測試的 Android 應用的實際架構和最佳實踐。

架構組件

架構組件是一堆被設計用來幫助我們遵循架構指南構建應用的庫。這些庫是模塊化的,因此並沒有必要把它們都使用起來。

它們是在 17 年的 Google I/O 大會上推出的,已經趨於穩定,因此如果你已經沒有入手,現在就是入手的好時機了。

我已經纂寫了一個系列的文章來解釋架構組件,還有一個使用了它們的示例應用。

Android 架構組件

談話視頻:

探索 Android 架構組件

免責聲明: 這一個視頻是由我來錄的。Google 的那個你如果想要的話,可以自己找找。

示例應用:

AkshayChordiya/android-arch-news-sample

有趣的事實: 還有更多的庫 (它們都將會稱為架構組件的一部分) 很快就會有了。


2017 年我們可以從 Android Oreo 獲得許多的功能特性。Oreo 設置了一個持續運行並消耗內存後台服務。

那有什麼新東西呢?

後台限制(Background Limit)

通知頻道(Notification Channel)

自動填充 API(Auto-fill API)

畫中畫(Picture-in-picture)

自適應圖標(Adaptive icons)

字體(Fonts)和可下載字體(downloadable fonts)

自動調整大小的 TextView(Auto-sizing TextView)

你可以從如下地址了解到更多有關的 API 變化:

Android 8.0 功能特性和 API | Android Developers

Android Studio 3.0 發布了許多新功能,像是對 Kotlin 的支持, 新的應用模擬工具套件對開發者更加友好,而且可以幫助快速地修復性能問題。

重要的提升:

更加快速

支持 Kotlin

新的應用模擬工具

APK 分析器(APK Analyzer)

支持開發中應用實時運行(Instant app)

支持 Android things

自適應圖標,可下載字體已經更多新功能

從下面的地址你還可以了解到更多:

Android Studio 3.0

儘管 Android Studio 3.0 已趨於穩定,不過此外的 Android Studio 3.1 已經在試用頻道發布了,而它帶來了更多的像是新的 DEX 編譯器這樣的魔性技術。


Android 實時運行應用是一種無需安裝就能運行 Android 應用的新方法。它是一種讓用戶使用 Android 應用的全新方式。

Instant apps 是藉助一個 URL 來觸發的,無需安裝就會打開一個應用。這像技術是通過將應用分解成功能然後讓每一項功能映射到 URL 來實現的,當 Google Play 接收到對特定 URL 的請求時,就會去獲取到應用的那個功能的代碼,再去運行這個應用。

對一個實時運行應用進行解析

實時運行應用是由多個基於一個基礎功能的功能組合而成的 —— ?基礎功能包含了所有功能的通用邏輯。

開發實時運行應用可以幫助我們依據應用的功能特性讓項目模塊化(如果不是已經模塊化的話),也能幫助我們裁減 APK 的大小。

開始構建你的實時運行應用的不錯的方法:

Android Instant Apps | Android Developers

Android 版本的碎片化是 Android 生態系統最大的問題之一。終端收到最新的 Android 更新要等上好多個月,而大多數終端甚至都不會收到更新。

有了 Project Treble,Android OS 架構被重新設計,製造商可以更輕鬆且更快速地將終端更新上新版本的 Android,而且代價也更少。

現在有了 Treble,終端製造商只需要將 Android OS 框架更新到最新就可以了,而無需擔憂供應商的實現會導致延遲更新。

Project Treble 要展現其神力尚需時日。我真心希望它能發揚光大,然後徹底解決調 Android 碎片化的問題。

Treble 來了: 為 Android 準備的模塊化基礎

有趣的事實: Google Pixel 2 在推出時承諾將持續更新 Android OS 三年。這其實是 Project Treble 將會給 Android 碎片化問題帶來轉機的很好證明。


Android Go是 Google 推出的一項舉措,旨在為全球數十億的在線用戶優化 Android 的使用體驗。

它是 Android 的一個優化版本,被設置用來在入門級也能很好的運行。

Android Go 起步於 Android 8.1 也就是 Android Oreo (Go 版) ,而它進行了如下配置:

內存優化:根據平台來提升內存的使用,以確保應用能在只有 1GB 或者更小 RAM 的終端上高效運行。

Google Play:Google Play 商店將會對那些使用《為數十億用戶構建應用指南》進行了優化,以為數十億人提供良好體驗的應用進行推薦並且給予更多的可見性。也就是說其它的應用將可以從商店看到並且進行安裝。

功能特性

Android Go 設備將可以有兩倍甚至更多存儲應用;

它們會與 Google 應用的 「Go 版」一起運行。

應用平均會快上 15%

Android Go 是 Solve for India 小組於十二月份發布的,而部署了 Android Go 的設備將會在 2018 到來:

介紹跟隨 Android 8.1 一起發布的的 Android Oreo (Go 版)


2017 年增強現實技術(AR)隨著 ARCore 來到 Android 中,ARCore 已成為在 Android 上構建增強現實應用程序的平台。

它被設計工作於運行 Android 7.1 (Nougat)及以上版本的 Android 設備中,但現在因為它處於開發者預覽階段,所以只支持 Pixel 和一些三星的設備。

它支持三種開發環境:

1、JAVA

2、Unity

3、Unreal

而且可能還有更多的渠道(指開發環境),你可以使用它們中的任一個(環境)構建你的 ARCore 應用。

它仍然在開發者預覽版中,現在是折騰它的好時機。

去吧,開始折騰 AR 玩吧。

ARCore - Google Developer | ARCore | Google Developers

谷歌 Pixel 2 的 AR Stickers 就是 Android ARCore 的一個例子。


Android 神經網路 API 是一種 Android C API ,旨在運行計算密集型操作的設備級的機器學習。

它為像 TensorFlow Lite 等更高級別的機器學習框架提供了一個基礎抽象層。可在支持的設備上進行硬體加速推理操作,以快速執行先前訓練過的機器學習模型。

它將主要輔助:

降低網路成本和延遲

提供隱私

它在 Android 8.1(奧利奧)及以上版本上可用。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 安卓開發 的精彩文章:

TAG:安卓開發 |