# Android Kotlin封装SQLite教程 ## 1. 简介 在Android应用程序中,使用SQLite数据库是非常常见的。SQLite是一种轻量级的关系型数据库,可以在本地存储和管理数据。在本教程中,我们将教你如何使用Kotlin语言封装SQLite数据库。 ## 2. 整体流程 下面是实现“Android Kotlin封装SQLite”所需的整体步骤: | 步骤 | 操作 |
原创 2023-08-18 12:46:46
572阅读
1.类构造函数1.1 基础构造函数class Person constructor(firstName: String) { }首选要清楚kotlin的默认修饰是public,所以上面的也可以简写成下面的class Person(firstName: String) { }如果像把构造函数变成privateclass Person private constructor(firstName: St
转载 6月前
13阅读
Kotlin 数据类与密封类数据类Kotlin 可以创建一个只包含数据的类,关键字为 data:data class User(val name: String, val age: Int)编译器会自动的从主构造函数中根据所有声明的属性提取以下函数:equals() / hashCode()toString() 格式如 "User(name=John, age=42)"componentN() f
转载 9月前
68阅读
在Android开发中,动态权限是一个非常重要的概念,尤其是在使用Kotlin进行应用开发时,权限的管理与申请显得尤为关键。本文将详细介绍如何在Kotlin中实现动态权限的封装,帮助开发者提高权限管理的效率和可维护性。 ### 环境准备 在开始之前,我们需要确保我们的开发环境适合我们的动态权限封装方案。以下是我们的技术栈兼容性。 ```bash # Kotlin 安装 sdk install
原创 5月前
51阅读
# Android Kotlin Flow网络封装 在Android开发中,网络请求是一个必不可少的功能。近年来,Kotlin语言和Flow库的流行,为我们提供了更加简洁、高效的方式来处理网络请求。本文将介绍如何使用Kotlin和Flow库来进行Android网络封装,并且提供相应的代码示例。 ## 1. 什么是Flow库 Flow是Kotlin协程库的一部分,它提供了一种符合响应式编程的方
原创 2023-11-28 09:54:17
472阅读
作用域与上下文协程作用域本质是一个接口,既然是一个接口,那么它就可以被某个类去实现(implement),实现它的那个类,也就具备了一些能力。class MyClass: CoroutineScope { // MyClass就具备了CoroutineScope的一些能力 }那么它具备了哪些能力呢?当然是启动协程的能力和停止协程的能力。除了runBlocking有一些特殊外,launch和
使用Kotlin简单的对Retrofit+RxJava大多数普通请求进行封装提示:如果对Kotlin,RxLifecycle,Retrofit,RxJava等不太了解的小伙伴可以参考网上的基础资料1.惯例先添加依赖//Retrofit implementation 'com.squareup.retrofit2:retrofit:2.3.0' implementation 'com
转载 6月前
59阅读
本文将会为大家介绍 Kotlin 的 "reified" 关键字,在介绍 "reified" 之前,我们得先提一下泛型 (Generics)。泛型在编程领域中是一个很重要的概念,它提供了类型安全,并帮助开发者在编程时不需要进行显示的类型转换。泛型对编程语言的类型系统进行了扩展,从而允许一个类型或方法在保证编译时类型安全的前提下,还可以对不同类型的对象进行操作。但是使用泛型也会有
转载 10月前
32阅读
前言通常我们做网络请求的时候,几乎都是 callback 的形式:request.execute(callback)复制代码callback = { onSuccess = { res -> // TODO } onFail = { error -> // TODO } }复制代码长久以来,我都习惯了这样子的写法。
转载 9月前
135阅读
作者:Antonio Leiva对于Java开发者来说,最懊恼的限制之一是,在用泛型时不能够直接地使用类型。 通常解决方法是以函数参数形式传递类,这使得代码更复杂且缺乏吸引力。 在Kotlin中,多亏有了inline函数(,我们可以用reified类型使我们能够在函数内使用它们。 为什么会如此?你会明白的,你会喜欢它的。 Reified 类型 如我
Kotlin 的扩展/*什么是扩展函数和扩展属性?*/ // 这个扩展函数是直接定义在 Kotlin 文件里的,而不是定义在某个类当中的。这种扩展函数, //我们称之为“顶层扩展”,这么叫它是因为它并没有嵌套在任何的类当中,它自身就在最外层。 /* ① ② ③ ④ ↓ ↓ ↓ ↓ */ fun Str
转载 8月前
19阅读
文章目录目的例子原始形式改造回调优化:并行处理事件流 目的协程用起来很方便,可以将异步的代码完全平铺开,写成和同步一样的代码形式。但很多时候,很多方法是以回调的形式给出的,所以处理起来依旧不够优雅。 本篇文章的目的就是解决这个问题。例子原始形式以OkHttp为例,OkHttp就是以回调的形式给出网络请求结果。通常我们的写法如下:/** * 原始写法 */ privat
转载 2024-04-23 11:20:30
117阅读
从这篇文章开始,我们进入Kotlin面向对象编程的世界,这部分的内容相对较多,也是十分重要的,我尽可能将我所学到的介绍给大家。可见性修饰符在开始介绍类之前,先来简单说明一下Kotlin的可见性修饰符。Kotlin的可见性修饰符有四种:public,protected,private和internal,如果不加任何修饰符,默认是public。它们可以用于修饰顶级元素(函数和类等全局元素),也可以用于
转载 8月前
49阅读
大家好,今天原创。在上一篇原创文章当中,我跟大家说了会开启一个新的系列,讲一讲Kotlin Flow响应式编程从入门到进阶的内容。总共计划是用三篇文章讲完,而本篇则是这个系列的第二篇文章。如果你还没有看过前面的基础知识入门的话,可以先去参考这里 Kotlin Flow响应式编程,基础知识入门 。本篇文章我打算着重讲解一下操作符函数的相关内容。什么是操作符函数?如果你熟悉RxJava,那么
什么是高阶函数?如果一个函数接收另一个函数作为参数,或者返回值的类型是另一个函数的话,那么该函数就被称为高阶函数。这个定义可能有点不太好理解,一个函数怎么能接受另一个函数作为参数呢?这里需要设计到另一个概念了:函数类型。我们都知道,编程语言中有整型、布尔型等等字段类型,而Kotlin又增加了一个函数类型的概念。如果我们将这种函数类型添加到一个函数参数声明或者返回值声明当中的话,那么这就是一个高阶函
转载 2024-01-28 17:23:05
33阅读
代码地址:https://github.com/DarkPointK/RxTrofit.git 前言       Retrofit是Square公司开发的一个类型安全的Java和Android 的REST客户端库。来自官网的介绍:A type-safe HTTP client for Android and JavaRest API是一
转载 2023-12-31 14:41:27
510阅读
fun main(args: Array<String>) { var rect01 = Rect(20,10) println("矩形的宽度:"+rect01.width+",矩形的高度:"+rect01.height)}class Rect(var width:Int,var height:Int)fun main(args: Array<String>...
原创 2022-06-06 13:42:33
201阅读
1.概念 把类定义在其他类里面,定义在其他类内部的类即为嵌套类(或者寄生类),包含嵌套类的类称为外部类(或者宿主类)。 根据定义的方式不一样,又分为内部类、嵌套类、局部嵌套类。 内部类、嵌套类相当于外部类成员之一,可以使用public|internal|protected|private来修饰。2.内部类 内部类相当于java没有使用static修饰的内部类。使用inner关键字修饰。(1)特点内
# Android Kotlin Retrofit 使用及封装 ## 引言 Android开发中,网络请求是一个非常常见且重要的功能。Retrofit是一个强大且易于使用的HTTP客户端库,它可以简化我们对网络请求的处理。本文将介绍如何在Android Kotlin项目中使用Retrofit,并对其进行封装,方便我们在实际开发中使用。 ## Retrofit简介 Retrofit是一个基于
原创 2023-11-15 11:40:22
1153阅读
Koin框架,适用于使用Kotlin开发 ,是一款轻量级的依赖注入框架,无代理,无代码生成,无反射。相对于dagger 而言更加适合Kotlin语言。官方网站GitHubApplication DSLkoinApplication { }       用于创建KoinApplocation的实例配置startKoin { }startKoin {
  • 1
  • 2
  • 3
  • 4
  • 5