
Android/kotlin
文章平均质量分 79
gf771115
这个作者很懒,什么都没留下…
展开
-
Coordinatorlayout+ recyclerview滑动冲突解决方案
看过我博客的小伙伴应该知道,我比较多的都是集成高德地图的博客,作的过程当中也遇到不少问题,感谢各位大佬的指点,每次解决问题后,以为之后可能还会遇到,我就会来写博客。java今天也不例外,由于项目里面用到了高德的搜索,因此有结果页显示,由于咱们项目是高度集成的高德地图,因此不少控件,或者高德不经常使用的方法都找不到,话很少说。android此次项目需求是:作成和高德地图同样,搜索结果页有三级滑动,而且有列表,有列表固然用listview或者是Recyclerview,这里建议你们用Recyclervi转载 2022-05-15 08:12:04 · 1971 阅读 · 0 评论 -
Android ROOM的基本使用
简介Room持久库提供了一个SQLite抽象层,让你访问数据库更加稳如狗,提示数据库性能。Room库帮助应用数据缓存,这个缓存是应用唯一的真实来源,并且允许用户查看应用中的关键信息的一致副本。导入库dependencies { def room_version = "1.1.1" implementation "android.arch.persistence.room:runtime:$room_version" annotationProcessor "a.转载 2021-06-24 08:44:16 · 276 阅读 · 0 评论 -
Android ROOM的基本使用
简介Room持久库提供了一个SQLite抽象层,让你访问数据库更加稳如狗,提示数据库性能。Room库帮助应用数据缓存,这个缓存是应用唯一的真实来源,并且允许用户查看应用中的关键信息的一致副本。导入库dependencies { def room_version = "1.1.1" implementation "android.arch.persistence.room:runtime:$room_version" annotationProcessor "a.转载 2021-06-14 22:18:01 · 318 阅读 · 0 评论 -
Android 11 外部存储权限适配指南及方案
前言 首先 Android 的权限大致分为三种: 普通权限:只需要在清单文件中注册即可 危险权限:需要在代码中动态申请,以弹系统 Dialog 的形式进行请求 特殊权限:需要在代码中动态申请,以跳系统 Activity 的形式进行请求 而我们今天要讲的主题,是关于存储权限,在 Android 6.0 之后就变成了危险权限,而到了 Android 11 上面变成了特殊权限,而最明显的区别是一个是通过 Dialog 展示给用户看,另外一个是通过 Activity 展转载 2021-05-30 11:19:31 · 4762 阅读 · 2 评论 -
在Kotlin中实现简洁优雅的RxBus
最近用Kotlin写代码比较多,写的多了真的越来越来喜欢这门语言。作为一门现代化的语言,Kotlin对比Java提供了简介的语法,更强大的lambda支持,属性扩展委托等。作为一个Android开发者的我来言,Kotlin over Java。组件之间的通信经常用到,用传统的接口方式也比较繁琐。而且目前的项目基本也都使用了RxJava,所以索性写个RxBus来实现好了。可能有人会说,我直接用EventBus好了呀,github上一万多个Star呢!沉默......我想说,你...转载 2021-05-24 23:36:58 · 378 阅读 · 0 评论 -
Kotlin 写 Android 单元测试(三),Mockito mocking 框架的使用
Kotlin 写 Android 单元测试系列:Kotlin 写 Android 单元测试(一),单元测试是什么以及为什么需要Kotlin 写 Android 单元测试(二),JUnit 4 测试框架和 kotlin.test 库的使用Kotlin 写 Android 单元测试(三),Mockito mocking 框架的使用Kotlin 写 Android 单元测试(四),Robolectric 在 JVM 上测试安卓相关代码Junit 4 测试框架可以验证有直接返回值的方法,但是对于转载 2021-05-23 19:44:45 · 1282 阅读 · 0 评论 -
Android Kotlin使用Mockito进行单元测试
简述在日常项目开发中,基本没有什么机会用到Kotlin,几个月前学习的语法,基本上都忘光了,于是自己强迫自己在写Demo中使用Kotlin,同时,在目前开发的项目中开了一个测试分支,用来补全之前没有写的测试代码。环境配置1.MockAPI单元测试中使用真实开发环境中的真实数据是不明智的,最好的方式是用本地的数据模拟网络请求,比如说我们有这样一个API,联网library我们选择Retrofit://TestServiceinterface TestService { .转载 2021-05-23 11:20:22 · 788 阅读 · 0 评论 -
Android:Camera2开发详解:实现预览、拍照、保存照片等功能
前言在前几篇文章中介绍了如何调用系统相机拍照和使用Camera1的实现自定义相机拍照、人脸检测等功能文章传送门:Android:调用系统相机实现拍照+裁切(兼容7.0以上系统) Android: Camera相机开发详解(上) —— 知识储备 Android: Camera相机开发详解(中) ——实现预览、拍照、保存照片等功能 Android: Camera相机开发详解(下) —— 实现人脸检测功能接下来的几篇文章中,我将给大家介绍如何使用Camera2实现自定义相机以及在实现过程中遇到转载 2021-05-12 22:43:17 · 1988 阅读 · 0 评论 -
RxJava2轻松入门-获取豆瓣电影列表
Demo地址RxJava2Demo本Demo旨在帮助从未接触过RxJava的同学直接入坑RxJava2,如丝般顺滑,万水千山总是情,留个star行不行?RxJava & RxAndroid (2.0版)#定义RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for t转载 2021-05-08 22:38:21 · 555 阅读 · 0 评论 -
Kotlin 泛型中的 in 和 out
当我们在 Kotlin 中定义泛型时,我们会发现它需要使用到 in 和 out 两个关键字来定义。从形式上来讲,这是一种定义「逆变」和「协变」的方式。那啥叫逆变?啥叫协变?可以参考下维基百科的定义:协变与逆变in & out 怎么记?out(协变)如果泛型类只将泛型类型作为函数的返回(输出),那么使用 out:interface Production<out T> { fun produce(): T}可以称之为生产类/接口,因为它主要是用来生产(produ..转载 2021-05-08 21:13:33 · 1228 阅读 · 0 评论 -
Kotlin 协程 看这一篇就够了
前言Kotlin协程是什么,如何使用?如何结合Retrofit使用?Kotlin协程的优势在哪里?相信看完这一篇你一定有所收获!协程基本使用若使用协程,首先我们得引入协程相关的开发包implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.7-mpp-dev-11'implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.7-mpp-d.转载 2021-05-05 08:51:06 · 425 阅读 · 0 评论 -
Kotlin密封类
Kotlin密封类密封类被用于展示受限的类层次结构。当一个值可以有一个来自一个有限集合中的类型,但不能有任何其他类型。在某种程度上来说,它们是枚举类的扩展,一个枚举类型的值的集合也是受限的。但每一个枚举常量只作为一个单例存在,而密封类的子类可以有多个实例,这些实例都可以包含状态。定义一个密封类,你只需将sealed修饰符放在类名之前。一个密封类可以有多个子类,但它们必须和密封类定义在同一个文件中。sealed class Exprdata class Const(val number: Doubl转载 2021-05-05 08:46:20 · 183 阅读 · 0 评论 -
Kotlin 写 Android 单元测试(三),Mockito mocking 框架的使用
Kotlin 写 Android 单元测试系列:Kotlin 写 Android 单元测试(一),单元测试是什么以及为什么需要Kotlin 写 Android 单元测试(二),JUnit 4 测试框架和 kotlin.test 库的使用Kotlin 写 Android 单元测试(三),Mockito mocking 框架的使用Kotlin 写 Android 单元测试(四),Robolectric 在 JVM 上测试安卓相关代码Junit 4 测试框架可以验证有直接返回值的方法,但是对于转载 2021-05-04 10:14:46 · 767 阅读 · 0 评论 -
Kotlin:静态方法
静态方法在其他高级语言(如C++,Java)中也叫类方法。静态方法在调用时无需创建实例,通过类名.方法名的方式调用。在java中调用静态方法的只需在声明前面加关键字static即可。而kotlin中却比较复杂,下面看看几种常见的应用场景。工具类工具类没有比较实例化,因此非常适合用静态方法实现。在kotlin中使用单例类实现类似的功能:object Util{ fun function(){ println("这是一个工具类") }}实际上这里的function...转载 2021-05-04 07:06:24 · 5711 阅读 · 0 评论