Kotlin
文章平均质量分 84
Kotlin基础
Kotlin版Android开发
MakerGaoGao
每个人都在前往未来的路上,只是有的人在走,有的人在跑
展开
-
一文了解DataStore(Proto)
本篇主要介绍Proto DataStore的内容。如果还不了解DataStore,请参考上篇一文了解DataStore(Preferences)本篇会涉及到Protocol Buffers相关的内容,如果不太了解,可以查资料作以了解。在protobuf闭包内添加如下配置,则生成的文件会在响应的目录,如"$projectDir/src/main"会在目录src/main/debug/java/包名/下生成$projectDir}...原创 2022-08-06 10:00:00 · 738 阅读 · 1 评论 -
一文了解DataStore(Preferences)
本篇主要介绍DataStore,包含介绍,使用等。本篇会介绍DataStore两种实现Preferences DataStore(主要介绍)和Proto DataStore(后续介绍)。本篇也会介绍到DataStore和SharedPreferences的不同之处,以及如何进行迁移。首先,DataStore是Jetpack一部分,是一种数据存储解决方案。其次,DataStore使用协程及flow以异步、一致的方式实现数据的存储。......原创 2022-08-05 08:00:00 · 865 阅读 · 0 评论 -
【Koltin Flow(五)】SharedFlow及StateFlow
相对于Flow而言,SharedFlow为热流,也就是说不管有无接收者,都会发送值。和SharedFlow一样,StateFlow也是热流,但是区别在于状态的保存,保存了最新的值,也就是新的接收者会收到最新的值,和设置了replay = 1的SharedFlow比较类似。本篇主要介绍了SharedFlow和StateFlow的基本使用、以及参数设置相关内容。本篇也终点介绍了shareIn操作符的使用,以及各种策略参数的设置,stateIn类比shareIn理解。......原创 2022-08-04 20:00:00 · 1020 阅读 · 0 评论 -
【Koltin Flow(四)】Flow背压
本篇主要介绍背压相关的内容,如背压的产生、处理方式等。本篇将介绍背压相关的操作符,如buffer等。本篇主要介绍了flow背压产生的原因、通俗类似于水流的理解方式。本篇介绍了flow的处理优化方式,主要操作符围绕buffer展开。本篇为自己学习及使用过程中的总结,难免存在错误或思维局限,欢迎大家讨论指正。......原创 2022-08-03 20:00:00 · 575 阅读 · 0 评论 -
【Koltin Flow(三)】Flow操作符之中间操作符(三)
本篇主要介绍中间操作符的功能性操作符以及一些其他操作符。如果对其他的操作符或者flow基本知识不太了解,可参考目录的其他篇内容作为参考。本篇主要介绍了一些功能性操作符,如retry等。buffer、conflate这两个操作符主要和背压部分相关,在背压的部分作以展开说明。其他操作符,主要做了下分类说明,因为牵扯到其他大块的内容,在其他的部分作以补充。.........原创 2022-08-02 20:00:00 · 393 阅读 · 0 评论 -
【Koltin Flow(三)】Flow操作符之中间操作符(二)
本篇主要介绍的有组合操作符、回调操作符,也会涉及一些其他的操作符。【KoltinFlow(一)】五种创建flow的方式【KoltinFlow(二)】Flow操作符之末端操作符【KoltinFlow(三)】Flow操作符之中间操作符(一)本篇主要介绍了两个部分操作符,分别为合并操作符和回调操作符。合并操作符,主要实现多个flow的一些合并、展平等操作;回调操作符,主要在flow执行的特定阶段回调展示或处理操作。本篇为自己学习及使用过程中的总结,难免存在错误或思维局限,欢迎大家讨论指正。............原创 2022-08-01 18:45:00 · 716 阅读 · 0 评论 -
【Koltin Flow(三)】Flow操作符之中间操作符(一)
flow的中间操作符比较多,根据作用大概可以分为几个类,如变换操作符、过滤操作符等。本篇主要介绍的有变换操作符、过滤操作符、也包含其他的一些操作符。【KoltinFlow(一)】五种创建flow的方式【KoltinFlow(二)】Flow操作符之末端操作符本篇主要介绍了中间操作符的一部分,其他的在下一篇继续介绍。本篇设计到中间操作符的两类操作符,分别为变换操作符、过滤操作符。操作符本身的理解并不难,只要总结起来结合具体的代码去理解就会比较容易。...........................原创 2022-08-01 10:43:26 · 896 阅读 · 0 评论 -
【Koltin Flow(二)】Flow操作符之末端操作符
本篇主要介绍flow的操作符部分,想要了解flow的创建,可以参考上一篇【KoltinFlow(一)】五种创建flow的方式Flow操作符主要分为末端操作符和中间操作符,本篇主要介绍末端操作符。本篇会介绍各类操作符的作用和使用方式,当然操作符比较多,也不会全面覆盖,会选择终点进行讲解。.....................原创 2022-07-29 11:08:49 · 1122 阅读 · 0 评论 -
【Koltin Flow(一)】五种创建flow的方式
flow是序列的异步版本,这是一种收集类型,其中的值是逐个生成的。与序列一样,只有需要某个值时,flow才会根据需要生成该值,而且flow可以包含无限数量的值。简单来说就是流式处理,用过Rx的会比较容易理解。flow通过api和协程支持,处理响应式编程更方便。本篇主要介绍flow的基础创建部分,介绍了五种方式,因为内容比较简单,介绍比较少,直接上代码也比较好理解。............原创 2022-07-28 17:13:51 · 619 阅读 · 0 评论 -
andrioid11打开其他应用的正确姿势
简介介绍此篇文章主要在应用内打开其他应用的正确姿势的基础上解决android11的适配问题,具体的打开代码此处不再赘述,可参考应用内打开其他应用的正确姿势参考文档谷歌开发者android11上遇到的问题:打电话、打开地图等找不到相关的应用原因:主要是android11的管理软件包可见性变更解决方案1(不推荐,Google市场会限制):<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"原创 2022-05-05 17:15:38 · 1939 阅读 · 1 评论 -
Kotlin之协程(四)上下文与调度器
简介介绍此篇文章主要介绍了kotlin上下文与调取器,如果之前没有接触过协程,可以参考下面的文章目录参考文档谷歌开发者Kotlin文档文章目录Kotlin之协程(一)初识Kotlin之协程(二)取消...原创 2021-09-27 15:56:28 · 298 阅读 · 1 评论 -
Kotlin之协程(三)组合挂起函数
简介介绍此篇文章主要介绍了kotlin组合挂起函数,如果之前没有接触过协程,可以参考下面的文章目录参考文档谷歌开发者Kotlin文档文章目录Kotlin之协程(一)初识Kotlin之协程(二)取消简单组合挂起函数1.顺序执行任务代码如下: private fun test() = runBlocking { val time = measureTimeMillis { val str1 = doIt1() va原创 2021-09-16 18:02:06 · 266 阅读 · 0 评论 -
Kotlin之协程(二)取消
简介介绍此篇文章主要介绍了kotlin的取消深入的介绍,如果之前没有接触过协程,可以赞考上一篇内容初始中的内容。参考文档谷歌开发者Kotlin文档文章目录Kotlin之协程(一)初识协程之取消深入1.概述简答的取消在上篇初识中已经有所介绍,不再赘述,这篇继续来深入了解协程的取消。2.取消异常代码如下 val job = launch(Dispatchers.Default) { try { var index =原创 2021-09-16 14:17:11 · 933 阅读 · 0 评论 -
Kotlin之协程(一)初识
简介介绍 协程是一种并发设计模式,您可以在 Android 平台上使用它来简化异步执行的代码。简单来说就是执行异步任务。参考文档谷歌开发者Kotlin文档优点轻量:您可以在单个线程上运行多个协程,因为协程支持挂起,不会使正在运行协程的线程阻塞。挂起比阻塞节省内存,且支持多个并行操作。内存泄漏更少:使用结构化并发机制在一个作用域内执行多项操作。内置取消支持:取消操作会自动在运行中的整个协程层次结构内传播。Jetpack 集成:许多 Jetpack 库都包含提供全面协程支持的扩展。原创 2021-08-26 14:43:00 · 218 阅读 · 0 评论