首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Kotlin学习
TimeFine
创建于2022-06-05
订阅专栏
Kotlin很早就学过,但一直没有投入到生产环境,最近公司新项目用kotlin开发,借此契机重新复习一下
等 23 人订阅
共24篇文章
创建于2022-06-05
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
kotlin-retrofit网络请求中的一些问题
这一篇其实是kotlin-协程与网络请求结果回调浅析的延续博客。 进入项目组的时候网络请求组件已经搭建好了,后来就一直按项目中的标准写法去使用,自己并没有深入的去解开心中的一些疑问,这篇博客主要是记录
Android-换个思路实现H5唤醒App并跳转到指定页面
一、H5如何唤醒App H5唤醒App有多种方式,但一般前端为了同时兼容Android和iOS会采用URL Scheme的形式,下面就重点介绍这种方式。 一个URL Scheme是由以下部分组成的:
Android如何设计一个全局可调用的ViewModel对象?
很多时候我们需要维护一个全局可用的ViewModel,因为这样可以维护全局同一份数据源,且方便使用协程绑定App的生命周期。那如何设计全局可用的ViewModel对象? 一、思路 viewModel对
kotlin-协程(九)协程的异常处理
在 Kotlin 协程当中,我们通常把异常分为两大类,一类是取消异常(CancellationException),另一类是其他异常。之所以要这么分类,是因为在 Kotlin 协程当中,这两种异常的处
协程和协程作用域
理清子协程,父协程,协程作用域,协程生命周期,协程作用域的生命周期等的关系。 1、协程是在协程作用域内执行的轻量级并发单元。当协程的代码块执行完成时,它会挂起并返回到其父协程或顶层协程中。 2、协程作
kotlin-协程(八)协程并发
一、协程的并发问题 因为协程是基于线程存在的,线程存在并发的问题,那么协程肯定存在,看如下的代码: 结果并不是10万,所以协程肯定存在并发的问题。 二、如何解决协程并发的问题 1、使用单一线程执行 将
kotlin-协程(七)关于Flow
一、Flow的创建方式 常见的创建Flow的方式有flow{}、flowof{}、asFlow等,下面是示例代码: 二、Flow的常见操作符 1、filter,map,take 比较常用也比较简单,代
kotlin-协程(六)关于channel
一、概述 挂起函数、async,一次都只能返回一个结果,但在某些业务场景下,我们往往需要协程返回多次结果,比如 IM 通道接收的消息,或者是手机定位返回的经纬度坐标需要实时更新。那么,在这些场景下,之
kotlin-协程与网络请求结果回调浅析
协程与网络请求的结合已经不是新鲜事物,那网络请求的结果是如何在协程中回调的呢? 本文简单探讨使用suspendCoroutine,suspendCancellableCoroutine,Complet
Kotlin-协程(五)CoroutineContext协程上下文
一、认识CoroutineContext 看一下CoroutineContext的源码,如下: CoroutineContext是一个接口,它的实现类常见的有:DefaultIoScheduler,C
Kotlin-协程(四)理解Job和协程的生命周期
Job 其实就是协程的句柄。从某种程度上讲,当我们用 launch 和 async 创建一个协程以后,同时也会创建一个对应的 Job 对象。另外,Job 也是我们理解协程生命周期、结构化并发的关键知识
Kotlin-协程(三)理解挂起函数
挂起函数,是 Kotlin 协程当中最基础、最重要的知识点。如果对协程的挂起函数没有足够的认识,我们将无法理解协程的非阻塞;如果不了解挂起函数,我们将无法掌握 Channel、Flow 等 API;如
Kotlin-协程(二)启动协程
这一篇主要讲解协程的三种启动方式。 一、launch 启动协程 我们先看看源码中launch函数是如何定义的: launch是CoroutineScope的扩展函数,而CoroutineScope是一
Kotlin-协程(一)理解协程
一、什么是协程? 如果要用简单的语言来描述协程的话,我们可以将其称为:“互相协作的程序”。 举个简单的例子,同样是 5 行代码,普通的程序,这 5 行代码的运行顺序一般会是 1、2、3、4、5;但对于
Kotlin-注解与反射
--- highlight: androidstudio --- ## 一、注解与反射 注解与反射的意义:提高代码的灵活性。只有深刻理解了注解和反射,我们才可能理解那些著名开源库的设计思路,也才可能读
Kotlin-泛型
泛型总是很难融会贯通的一块,有时间好好学习整理一下。 一、泛型基础 将共通的部分抽象化,复用代码,形成模板。 举一个简单的动物进食的例子。 接口 实现类 假如我们需要分析不同动物的进食行为,我们没有必
Kotlin-委托
一、关于委托 委托在实际开发中一直不受重视,这是因为委托的应用场景不清晰,但Kotlin 的委托在软件架构中可以发挥巨大的作用,例如Jetpack Compose中就大量使用了委托。 Kotlin的委
Kotlin-扩展
一、扩展函数 1、扩展函数 扩展函数,就是从类的外部扩展出来的一个函数,这个函数看起来就像是类的成员函数一样。比如扩展一个String的方法。我们经常需要切割字符串然后获取第几个元素,我们扩展一个类似
Kotlin-关于构造函数
整理一下kotlin的构造函数,有一些要注意的小细节。 1、主构造函数加或不加val/var有何区别? 例如下面这二个类: 反编译后的结果: 添加了val/var会生成成员属性name,而如果不加则仅
Kotlin-object关键字与单例模式
object 关键字有三种不同的语义:匿名内部类、伴生对象、单例模式。因为 Kotlin 的设计者认为,这三种语义本质上都是在定义一个类的同时还创建了对象。在这样的情况下,与其分别定义三种不同的关键字
下一页