你們好,我是秉心說。html
新一期的 Now in Android 又更新了,原文地址以下:android
https://medium.com/androiddevelopers/now-in-android-16-9a282ebd3f42git
和往常同樣,最近更新了不少 AndroidX 類庫,其中包含兩個 stable 版本:github
包含一些 bug fix,並無什麼新特性。web
除此以外,還有不少的 RC 、beta 、alpha 版本更新。做者挑了兩個動畫相關的 alpha 版本更新着重說明, Core-Animation 1.0.0-alpha01 和 Vectordrawable-Seekable 1.0.0-alpha01。數據庫
Core-Animation 1.0.0-alpha01 應該是把以前的動畫 API 搬到 androidx 上了,並添加了一些新特性,就包括 AnimatedVectorDrawable
,它具有 seekable
特性,能夠暫停和恢復,自動設置動畫位置。express
更多詳細信息,能夠查看官網相關文檔。app
關於 Database Inspector, 我前幾天專門寫了一篇文章作了詳細介紹,數據庫還能夠這麼看 ?編輯器
這裏再簡單說一下,經過 Database Inspector ,你能夠在 Android Studio 中快速查看和修改你的數據庫表數據,除此以外,你也能夠執行 Sql 語句。若是你使用的是 Room 數據庫,你還能夠直接執行你的 Dao 文件中的 Sql 語句。函數
另外說一點,個人文章是基於 Android Studio Canary 5 寫的。在最新的 Android Studio Canary 6 中,已經支持了 Live Update 功能,即你再修改表數據以後,UI 頁面會自動刷新,而以前你必須得手動刷新才能看到修改。
更多詳細內容,能夠閱讀個人文章,也能夠閱讀 Google 團隊的文章,地址以下:
https://medium.com/androiddevelopers/database-inspector-9e91aa265316
這是 Kotlin Vocabulary 系列的新文章,介紹了 操做符重載 ,原文地址以下:
https://medium.com/androiddevelopers/code-expressivity-with-operator-overloading-ada22a0ca633
正常狀況下,+
-
*
/
等符號只能應用於特定類型,經過 Kotlin 的操做符重載,你能夠對任意對象使用這些符號。舉個文中最簡單的例子,
operator fun ViewGroup.plusAssign(other: View) = addView(other)
複製代碼
而後你就能夠這樣使用了。
viewGroup += view
複製代碼
原理其實也很簡單,編譯器的黑魔法而已。你查看字節碼就能夠看到,符號又被替換回了 plusAssign()
方法。
目前 Kotlin 支持的重載操做符有這些。
Kotlin 在一些方面留給了開發者很大的自由發揮空間,像操做符重載,擴展函數等。你能夠充分發揮本身的想象力去創造代碼,這也是我很喜歡 Kotlin 的一個重要緣由。
Nick Rout 的一篇新文章 Migrating to Material Components for Android ,地址以下:
https://medium.com/androiddevelopers/migrating-to-material-components-for-android-ec6757795351
這個其實就是 com.google.android.material:material:1.0.0
,用以代替之前的 Design Support 庫。最近由 1.0.0
升級到了 1.1.0
,有許多的細節更新,包括 Dark Theme ,完整的 Material 主題支持(包括顏色,樣式),新的組件(FAB,data picker) 。
做者建議若是你是從 Design Support 庫升級上來的,先升級到 1.0.0
版本,沒有問題的話再升到 1.1.0
版本。
文中有許多的更新細節,這篇文章我尚未細看,後續會將個人開源 Wanandroid 項目也更新到 1.1.0 版本。
另外,還有視頻版本,地址以下:
https://www.youtube.com/watch?v=64OD1PAqELg&feature=emb_logo
這個相似國內的各類 一鍵免密登陸,由 Google Identity Services 提供。固然也就意味着,跟咱們大多數人沒太大關係。若是你是出海應用,能夠關注一下。
https://medium.com/androiddevelopers/one-tap-sign-in-for-android-apps-2259ce15bc2c
受疫情影響,Jose Alcérreca 繼續他的 錄屏系列 。
兩個一分半的視頻。第一個視頻介紹了協程和 LiveData 的基本使用。
https://www.youtube.com/watch?list=PLNUr_cTShrWZNKJlnurh5MB1wkSEU2nlw&time_continue=1&v=KUn0-D6DpuY&feature=emb_logo
第二個視頻介紹了 switchMap
的基本使用。
https://www.youtube.com/watch?v=KUn0-D6DpuY&list=PLNUr_cTShrWZNKJlnurh5MB1wkSEU2nlw&index=6
(重要的事情說三遍。)
關於 Android 11 中定位功能的相關變化,在前面幾期的 Now in Android 中已經作過介紹。若是你還不瞭解的話,能夠看看 Google 重寫事後的 Android Location Codelab ,地址以下:
https://codelabs.developers.google.com/codelabs/while-in-use-location/index.html?index=..%2F..index#0
這個 codelab 提供了前臺請求定位的最佳實踐。所謂前臺是指應用可見,或者應用正在運行一個有通知的前臺服務。
那麼後臺請求定位呢?首先,是不建議後臺請求定位的,除非你有合理的用戶場景。若是真的有用戶場景的話,官網也有相關介紹:
https://developer.android.com/training/location/background
後臺請求定位的示例代碼:
https://github.com/android/location-samples/tree/master/LocationUpdatesBackgroundKotlin
其實我也不知道國內有多少應用會去作無障礙的,包括我本身也沒有作過。Google 建議每一款 App 都要考慮到特殊人羣無障礙使用。
Shailen Tuli 發佈了兩個 codelab 來幫助開發者完成無障礙適配。第一個 codelab 介紹了一些通用問題和解決方案,地址以下:
https://codelabs.developers.google.com/codelabs/starting-android-accessibility/#0
第二個 codelab 介紹瞭如何使用 Espresso 完成無障礙相關的自動化測試。地址以下:
https://codelabs.developers.google.com/codelabs/a11y-testing-espresso/#0
我是秉心說,這一期的 Now in Android 就到這裏了,你們下期再見!
更多 Android 最新動態,掃碼關注我吧 !
本文使用 mdnice 排版