Android 已經做好迎接可摺疊手機、Kotlin 1.3 的準備

Android 已經做好迎接可摺疊手機、Kotlin 1.3 的準備

在 Android 開發峰會上,谷歌發佈了一系列新聞,包括 Android 支持 kotlin 1.3 新特性、可摺疊手機支持、應用內 Updates API、Android Studio 改進等等。

Kotlin

Kotlin 1.3帶來了一系列新的語言特性、API、Bug 修復和性能改進。這些新特性將通過KTX 擴展(KTX 針對 Kotlin 的使用優化了 Jetpack 和 Android 平臺 API)集成到 Kotlin 專用的 API 中,作為 Android Jetpack 的一部分,包括:

  • 內聯類是一個實驗性特性,它允許開發人員創建一個類型,除非裝箱,否則不會分配。
  • 無符號數現在是 Kotlin 標準庫的一部分,包括 UInt、UByte 和 ULong。這些新類型是使用內聯類構建的。
  • 以前為 Android 或 JVM 編寫的多平臺代碼現在也可以面向 JavaScript 或本機代碼了。這提供了在更多平臺上重用部分代碼庫的可能性。
  • 協程支持現在已穩定。協程提供了設計異步、非阻塞程序的強大範式。

Android Studio

Android Studio 3.3 Beta 3 帶來了一系列的特性、改進和 Bug 修復。我們將介紹其中的一部分。

內存分配分析器現在允許開發人員選擇一種模式來跟蹤實時內存分配:

  • 全部:獲取所有對象的內存分配;
  • 抽樣:定期捕獲對象內存分配的樣本,這是默認行為,在分析時對應用程序性能的影響較小;
  • 關閉:關閉內存分配。

CPU 分析器現在允許開發人員查看 Java 應用程序在主 UI 線程和 RenderThread 上渲染每一幀需要多長時間。當查找導致 UI“掉幀(jank)”和低幀率的瓶頸時,可能會有用到這些數據。

Android Studio 添加了一個新的對話框,允許開發人員刪除未使用的目錄。當一個新的 Android Studio 主要版本第一次運行時,它會查找包含與 Android Studio 舊版本相關聯的文件的目錄,而這個舊版本已經無法找到相應的安裝。當找到這樣的文件時,將顯示一個對話框列出這些文件,並提供刪除文件的選項。

Android Studio 還支持構建Android 應用程序包,完全支持Instant Apps。換句話說,開發人員可以從一個 Android Studio 項目中構建和部署安裝應用和 Instant App。要使用此功能,請確保在創建新項目時勾選了“配置項目 > 此項目將支持 Instant App”的複選框。清單文件中將增加下列屬性:

複製代碼



...

Android Studio 現在支持使用Clang-Tidy對包含原生代碼的項目進行靜態代碼分析。

R8是一個替代 ProGuard 的新的代碼壓縮和混淆工具,它是默認啟用的。

可摺疊手機

谷歌已經宣佈 Android 支持可摺疊手機,名為“Foldables”。可摺疊手機是由設備製造商創建的新類型,用戶可以摺疊 / 展開設備,如下圖所示。

Android 已經做好迎接可摺疊手機、Kotlin 1.3 的準備


(圖片來自android-developers.googleblog.com

谷歌正在優化 Android 系統,以適應一種叫做屏幕連續性的新形式。在這種新形式中,應用程序可以自動從一個屏幕過渡到另一個屏幕。例如,用戶用摺疊過的小屏幕啟動視頻,然後展開設備以獲得更大的屏幕。當用戶展開可摺疊手機時,應用程序可以無縫地轉移到更大的屏幕上,沒有任何問題。在 2018 年三星開發者大會上,三星宣佈了首款可摺疊手機,並計劃在明年推出。

應用內 Updates API

谷歌發佈了 Instant App 的改進,推出了應用內 Updates API。有了這個 API,開發人員將有兩個選項可以保證用戶更新他們的應用程序:第一個是關鍵更新的全屏體驗,迫使用戶立即應用更新。第二種是靈活更新,這意味著用戶可以在下載更新時繼續使用應用程序。據谷歌介紹,他們正與谷歌的一些合作伙伴一起測試這個 API,並將儘快提供給所有開發人員。

Android 已經做好迎接可摺疊手機、Kotlin 1.3 的準備


(圖片來自android-developers.googleblog.com

Android Jetpack

Android Jetpack帶來了一些架構組件庫的更新。按照谷歌的說法,旨在簡化導航實現的Navigation將在 11 月進行 Beta 測試。

按照谷歌的說法,另一個將進行 Beta 測試的組件是WorkManager,該庫提供了一個基於後臺約束的作業的解決方案,取代諸如作業或SyncAdapters這樣的東西,提供一個簡潔的現代化 API,旨在使它更容易指定異步任務,在有或沒有 Google Play Services 的設備上都可以運行。

Slices是 UI 模板,可以在谷歌搜索應用和其他地方(如谷歌助手)中顯示豐富的動態交互式內容。它已經被轉移到公開搜索實驗中。

谷歌 Android 開發者網站上提供了更多信息。谷歌還為那些想為可摺疊手機準備應用程序的用戶提供了一系列建議。

如果你已經把 Android Studio 設置為在Beta 通道上接收更新,那麼你可以通過幫助 > 檢查更新(Android Studio > 檢查 Mac 版更新)來獲得更新。否則,你可以從這裡下載。

查看英文原文:https://www.infoq.com/news/2018/11/android-dev-summit-2018


分享到:


相關文章: