Hello 各位同窗好呀,我是 wanbo,今天咱們繼續更新 Now in Android 的第二期。html
Now in Android 是由 Chet Haase 在 Medium 上發佈的一系列關於 Android 相關技術的文章,創辦這個系列的目的是爲了,幫助廣大開發者能夠更好的掌握 Android 的最新技術動態,最近 Android Team 從新設計了新系列的 **Now in Android 。**全新的 Now in Android 目前將會整合全部 Android 開發者須要掌握和學習的最新內容,以視頻和文章的形式爲你們統一介紹,並在文章中會附上相應技術的官方連接地址,幫助你們瞭解詳細內容。android
我也會結合本身的理解,在本公衆號【Android|Kotlin】中爲你們同步更新 Now in Android 的最新內容,感興趣的同窗記得關注訂閱呀。markdown
AndroidX 的推出是爲了解決 support 帶來的 API 碎片問題,同時 AndroidX 也避免了以前不少 API 的發佈更新須要隨着 Android 的大版本更新而更新的問題,若是你還在使用 support 包那須要趕快切換到對應的 AndroidX 包中,由於 support 包如今已經中止更新了,新的功能目前只會在 AndroidX 中更新。 app
上圖截自於 AndroidX 的官方文檔,上面列舉了目前存在的 AndroidX 庫以及該庫目前的各個存在版本,點擊詳情還能夠查看各個版本的更新日誌,在升級版本以前,能夠先在官網上 Check 一下更新日誌,確保不會出現嚴重的兼容性問題。文檔地址以下:developer.android.com/jetpack/and…編輯器
同時文檔中,還羅列了 support 與 AndroidX 各個包的對應關係,建議在充分了解後再作 support 與 AndroidX 的遷移。文檔地址以下:developer.android.com/jetpack/and…工具
下面是截止 1 月 22 日,Android X 的更新記錄:oop
Fragment 1.2.0 版本更新學習
1.2.0 中推薦使用 FragmentContainerView 替代原有的 和 標籤,來做爲 Fragment 的容器。同時 Fragment 支持 Lifecycle ViewModel SavedState,並更改了 onDestroyView() 的調用時機,確保 Fragment 會在退出動畫執行完畢以後再執行 onDestroyView(),更新日誌地址以下:動畫
developer.android.com/jetpack/and…ui
同時歡迎查看以前更新的文章 ,該文章中介紹了目前 Android 團隊對 Fragment 以後的發展方向和規劃。
Lifecycle 2.2.0 版本更新
新的 lifecycle-runtime-ktx 工件實現了 Lifecycle 協程與 Kotlin 協程之間的集成。此外,咱們還擴展了 lifecycle-livedata-ktx 以便利用協程的優點。更新日誌地址以下:
Lifecycle-Viewmodel-Savedstate 1.0.0 首個正式版發佈
ViewModels 如今能夠經過 SavedStateHandle 在 onSaveInstanceState() 中保存臨時數據,保證 Activity 或 Fragment 在銷燬重建時,能夠自動恢復 ViewModels 中的數據。並且你不須要手動編寫額外保存數據的邏輯,這一切都是自動實現的,關於更多的使用方式能夠參考一下地址內容:
Navigation 2.2.0 版本更新
您如今能夠調用 NavController.getBackStackEntry() 獲取新的 NavBackStackEntry,能夠重新返回的 NavBackStackEntry 中獲取到 Lifecycle 以及 SavedState 的相關信息。其他更新還有 deep link 參數查詢支持和動畫方面的改進。更新日誌地址以下:
WorkManager 2.3.0 版本更新
提供了新的 API setProgress() 和 setForeground(),幫助你在 Worker 執行是獲取當前任務的執行進度,以及容許 Worker 在前臺服務中執行。更新日誌地址以下:
除此以外,還更新了 memory profiler 能夠幫助開發者更方便的檢查內存泄漏的問題,以及支持開啓 View Binding 用於替代以前的 findViewById,更新日誌地址以下:
developer.android.com/studio/prev…
Android Studio 預覽版發佈了第 9 個預覽版本,4.0 更新了不少新的 feature,包括支持 Jetpack Compose,新的 MotionLayout 動畫編輯器,新的 3D Layout 查看器等等,若是你對 4.0 的新特性不瞭解,歡迎查看早期更新的文章:Android Studio 4.0 最新進展,這裏就再也不贅述。這篇文章討論瞭如何引入 typealias 以及 typealias 的最佳實踐,原文地址以下:
Wojtek Kaliciński 發佈了新的 Codelab :Building a Kotlin extensions library,這個代碼實驗室展現瞭如何建立屬於本身的 Kotlin 擴展庫,就像 Android KTX 同樣,爲現有的功能作加強。Codelab 地址以下:
codelabs.developers.google.com/codelabs/bu…
Android Developers Backstage 是由 Chet Haase 參與創辦的播客頻道,至今已經創辦了 5 年超過 130 期節目,每一期他們都會討論和分享關於 Android 的方方面面,從代碼到設計、從軟件到硬件。
最新的 131 期,Chet Haase 邀請到了 Android UI Toolkit 團隊的 Tor,Romain 和 Chet 探討了新的 UI 構建工具 Jetpack Compose 以及聲明式 UI 的方方面面。podcast 地址:
androidbackstage.blogspot.com/2020/01/epi…
這裏一樣推薦你們收聽來自 Donn Felker 和 Kaushik Gopal 創辦的 Podcast Fragmented。第 187 期他們和 Google 的兩位專家討論了有關於協程的相關內容。podcast 地址:
fragmentedpodcast.com/2020/01/
聽力好的同窗能夠關注一下這兩個 podcast,有不少有趣的內容和乾貨在裏面。
至此,就是全新的 Now in Android : 02 的內容,這一期爲你們介紹了 AndroidX 最新發布的庫,Android Studio 3.6 和 4.0 的新特性,以及一篇有關 Kotlin typealias 的文章和一個教你如何編寫 Koltin 擴展庫的 Codelab,最後爲你們推薦了兩個播客頻道:Android Developers Backstage 和 Fragmented。
本公衆號也會開啓 Now in Android 的新系列更新,關注公衆號【Android |Kotlin】,在首頁點擊 新鮮事兒 → Now in Android ,就能夠看到這一系列文章的所有內容。
感謝你的閱讀。