协程中的流 协程中的异步流 基础一.什么是异步流 可以连续返回多个值 与集合的区别:集合可以返回多个计算好的值,但是只能一次性返回 与Rxjava 的流是同一个概念二.如何创建异步流1.最基础的流构建器 flow{}flow { … } 构建块中的代码可以挂起,不再需要 suspend 修饰符。emit 发射, collect 收集。flow 构建器中的代码直到流被收集的时候才运行不阻塞线程collect在哪个协程中调用,如果没有特殊操作,则flow代码块也在相同协程中运行``f
Kotlin 协程基础Coroutine Kotlin 协程基础Coroutine [kəruː’tiːn]需要了解的概念,类1.协程与线程的区别本质上,协程是轻量级的线程一个线程中可以有N个协程。协程中也可以有N个子协程。2.Dispatchers类 -调度器,指定协程运行在哪个线程中@JvmStatic //与IO共享线程池,区别在于Default限制了最大并发数,最少2个,最大为cpu的核数public actual val Default: CoroutineDispatcher = createDefaultDispatch
ARouter初始化及跳转原理 Arouter初始化及跳转原理编译后生成文件仓库类``class Warehouse { // Cache route and metas static Map<String, Class<? extends IRouteGroup>> groupsIndex = new HashMap<>(); static Map<String, RouteMeta> routes = new HashMap<>();
搞懂Android Jetpack ViewModel 使用及原理 ViewModel 的官方解释ViewModel 类旨在以注重生命周期的方式存储和管理界面相关的数据。ViewModel 类让数据可在发生屏幕旋转等配置更改后继续留存ViewModel 的用处暂存数据根据官方简介,ViewModel可以暂存数据,当界面发生横竖屏切换时,viewmodel中的数据不会发生变化。只有当Activity或者Fragment被销毁时,ViewModel才会被销毁。ViewModel的生命结束周期是与Activity/Fragment一致的,所以不存在内存泄漏的问题。V
Activity启动流程图解 参考:https://www.jianshu.com/p/733664614fa2https://blog.csdn.net/zhaokaiqiang1992/article/details/49428287###
封装Android带Lottie动画的底部导航栏 什么是Lottie动画Lottie 是Airbnb开源的一个面向 iOS、Android、React Native 的动画库,能分析 Adobe After Effects 导出的动画,并且能让原生 App 像使用静态素材一样使用这些动画,完美实现动画效果,动画效果比原生动画要优美很多。Lottie动画由UI提供,UI给到我们的是xxx.json文件,这个文件就是动画文件。优点:动画效果好...
Android Studio3.3 之 Navigation Editor 详解 Android Studio3.3 Navigation Editor(导航编辑器)简单使用AS 3.3更新后,最大的看点就是Navigation Editor, 根据官方文档学习了一下,在这记录一下,帮助不能翻墙的同学学习这个新功能。导入Navigation Editor在app中的build.gradle中加入 def nav_version = &amp;amp;quot;1.0.0-alpha0...