Kotlin & Coroutines
Kotlin 1.4 发布
性能提升、类型推导强化、SAM转换的支持,等等一系列进化
- https://github.com/JetBrains/kotlin/releases/tag/v1.4.0
- https://blog.jetbrains.com/kotlin/2020/08/kotlin-1-4-released-with-a-focus-on-quality-and-performance/
Coroutines 1.4 发布
增加了 StateFlow 与 SharedFlow
- https://github.com/Kotlin/kotlinx.coroutines/releases/tag/1.4.0
- https://blog.jetbrains.com/kotlin/2020/10/kotlinx-coroutines-1-4-0-introducing-stateflow-and-sharedflow/
kotlinx.serialization 1.0 发布
- https://blog.jetbrains.com/kotlin/2020/10/kotlinx-serialization-1-0-released/
- https://github.com/Kotlin/kotlinx.serialization/releases/tag/v1.0.0
Kotlin Android Extensions 废弃
Kotlin Plugin 1.4.20 起停用 Kotlin Android Extensions,推荐使用使用ViewBinding 和 kotlin-parcelize进行替换
- https://github.com/JetBrains/kotlin/releases/tag/v1.4.20
- https://android-developers.googleblog.com/2020/11/the-future-of-kotlin-android-extensions.html
Android Studio & Android SDK
Android Studio 3.6 正式版发布
开始支持ViewBinding的使用;增加ResourceManager
- https://developer.android.com/studio/releases/#3-6-0
Android Studio 4.0 正式版发布
期待依旧的大版本,增加了很多新功能,MotionEditor 、 Layout Validation 、Build Analyzer,LayoutInspector也得到强化
- https://developer.android.com/studio/releases/#4-0-0
Android Studio 4.1
增加了 Database Inspector 、 Dagger 依赖关系分析工具等, 模拟器可以再Studio内部启动
- https://developer.android.com/studio/releases/#4-1-0
Android Studio 4.2
Instrumentation test 和 System Trace 得到强化,目前是Beta2
- https://developer.android.com/studio/preview/features#4.2
Android Studio Arctic Fox
Android Studio 后续的版本号对齐 IntelliJ IDEA, 以年份为版本,动物名称为come。新版本中简化了Wireless ADB的使用方法
- https://android-developers.googleblog.com/2020/12/announcing-android-studio-arctic-fox.html
- https://developer.android.com/studio/preview/features#2020.3.1
Android 11
改进的 WindowInset API 优化 IME动画;Scoped storage成为标准 ;AsyncTask遭废弃
- https://github.com/android/user-interface-samples.git
- https://developer.android.com/about/versions/11
- https://android-developers.googleblog.com/2020/09/android11-final-release.html
Android Jetpack
Activity 支持 Result API
Activity 1.2.0-alpha2 起发布 ActivityResult 、onActivityResult 未来会被废弃
- https://developer.android.com/training/basics/intents/result
Fragment API更新
1.3.0-alpha02起,onCreateView遭废弃
- https://developer.android.com/jetpack/androidx/releases/fragment#1.3.0-alpha02
RecyclerView 增加 ConcatAdapter
RecyclerView 1.2.0-alpha02 增加 ConcatAdapter ,可以同时操作多个Adapter
- https://developer.android.com/jetpack/androidx/releases/recyclerview#recyclerview-1.2.0-alpha02
- https://developer.android.com/reference/androidx/recyclerview/widget/ConcatAdapter
ConstraintLayout 2.0.0 stable & 2.1.0 alpha
ConstraintLayout 2.0.0 稳定版发布,增加了MotionLayout 与 Flow ;2.1.0 alpha中增加 Carousel 。 另外ConstraintLayout 的源码上架Github
- https://androidstudio.googleblog.com/2020/08/constraintlayout-200.html
- https://androidstudio.googleblog.com/2020/11/constraintlayout-210-alpha-1.html
- https://github.com/AndroidX/constraintlayout
Jetpack DataStore 发布
DataStore发布,替换SharedPreference
- https://android-developers.googleblog.com/2020/09/prefer-storing-data-with-jetpack.html
App Startup 发布
通过共享ContentProvider实例,优化APP初始化流程
- https://developer.android.com/topic/libraries/app-startup
Paging3
加入了对 coroutines的支持,还在开发中
- https://developer.android.com/topic/libraries/architecture/paging/v3-overview
Jetpack Compose alpha 发布
预计明年稳定版,aplha版API仍然有变化的可能
- https://developer.android.com/jetpack/compose
- https://android-developers.googleblog.com/2020/08/announcing-jetpack-compose-alpha.html
Jetpack Compose for Desktop
Jetpack Compose 开始支持桌面GUI的开发
- https://blog.jetbrains.com/cross-post/jetpack-compose-for-desktop-milestone-1-released/
Navigation Compose Version 1.0.0
基于Navigation实现了Compose的路由功能。目前处于alpha版本
- https://developer.android.com/jetpack/androidx/releases/navigation#navigation_compose_version_100_2
Dagger
Hilt alpha 发布
Android Dev Summit 2019 中发布 Dagger改进计划-- Hilt 。目前Hilt加入AndroidX包
- https://dagger.dev/hilt/
- https://developer.android.com/training/dependency-injection/hilt-android
Material Components
1.1.0
支持 MaterialTheming 和 DarkTheme
- https://github.com/material-components/material-components-android/releases/tag/1.1.0
1.2.0
增加了Motion system 以及几个新组件
- https://github.com/material-components/material-components-android/releases/tag/1.2.0
Others
Google I/O >> 11 weeks of android
因为疫情等原因Google I/O停办,以线上发布,发布了近期Android的变化
- https://developer.android.com/11weeksofandroid
RxJava 3.0
RxJava 3.0 正式版发布,同时RxJava与Coroutine Flow的选择将成为新的课题
- https://github.com/ReactiveX/RxJava/releases/tag/v3.0.0
- https://github.com/ReactiveX/RxJava/wiki/What’s-different-in-3.0
coil 1.0
1.0 稳定版发布,是否会取代glide,让我们拭目以待
- https://github.com/coil-kt/coil/blob/master/CHANGELOG.md#100—october-22-2020
- https://tech.instacart.com/announcing-coil-1-0-5d57b608dc93
AppBundle 成为标准
2021/8 之后,上架GP的APP必须使用AppBundle
- https://android-developers.googleblog.com/2020/11/new-android-app-bundle-and-target-api.html
结语
2020是动荡的一年,Android开发圈也出现了不少新技术和新变化;
2021我们祈福社会稳定的同时,也明白对于程序员来说,唯一不变的就是变化。
来年让我们一起加油💪