草庐IT

kotlin-coroutines

全部标签

如何使用Android上的Kotlin从URL中解析JSON?

我一直在尝试从URL解析JSON数小时,但我太愚蠢了我努力了valresult=URL("http://date.jsontest.com/").readText()但是它崩溃了java.net.malformedurlexception:无协议:date.jsontest.com我尝试了克拉克森的图书馆funparse(name:String):Any?{valcls=Parser::class.javareturncls.getResourceAsStream(name)?.let{inputStream->returnParser().parse(inputStream)}}valobj

Android用setRectToRect实现Bitmap基于Matrix矩阵scale缩放RectF动画,Kotlin(一)

Android用setRectToRect实现Bitmap基于Matrix矩阵scale缩放RectF动画,Kotlin(一) 基于Matrix,控制Bitmap的setRectToRect的目标RectF的宽高。从很小的宽高开始,不断迭代增加setRectToRect的目标RectF的宽高,每次迭代加上一定时延,实现Matrix基础上的动画。 importandroid.graphics.Bitmapimportandroid.graphics.BitmapFactoryimportandroid.graphics.Canvasimportandroid.graphics.Colorimpo

Kotlin 协程:深入理解 ‘lifecycleScope‘

Kotlin协程:深入理解‘lifecycleScope’Kotlin协程是一种强大的异步编程工具,它提供了一种简洁、易读的方式来处理并发和异步操作。在Kotlin协程库中,lifecycleScope是一个关键的概念,它允许我们将协程的生命周期绑定到Android组件的生命周期。在本篇博客中,我们将深入探讨lifecycleScope的工作原理,以及如何在实际的Kotlin代码中使用它。协程简介在我们深入探讨lifecycleScope之前,让我们先简单回顾一下协程的基本概念。协程是一种可以挂起和恢复执行的计算。与线程不同,协程的挂起和恢复不需要操作系统的介入,因此协程的开销非常小。这使得我

Kotlin中的代码A和代码B之间有什么不同?

我是Kotlin的初学者,您能告诉我Kotlin中的代码A和代码B之间有什么不同吗?谢谢!代码aclassPerson(valfirstName:String,vallastName:String,varage:Int){}代码bclassPerson(firstName:String,lastName:String,age:Int){}看答案看https://kotlinlang.org/docs/reference/classes.html有关更多详细信息,但简而言之:代码b声明默认构造函数的参数,但对它们没有任何作用。代码a还声明了默认构造函数的参数,但也声明属性并从参数初始化它们。(请

java - 从 Kotlin 实现 Java 接口(interface)时出现 NullPointerException

我正在尝试在Kotlin中从RxJava实现BiFunction接口(interface),但我得到了一个NullPointerException。这是我在Kotlin中实现的Java接口(interface)。它来自RxJava2。packageio.reactivex.functions;importio.reactivex.annotations.NonNull;/***Afunctionalinterface(callback)thatcomputesavaluebasedonmultipleinputvalues.*@paramthefirstvaluetype*@param

AndroidStudio 2024-2-21 Win10/11最新安装配置(Kotlin快速构建配置,gradle镜像源)

AndroidStudio2024Win10/11最新安装配置教程目的:(从安装到卸载),针对Kotlin开发配置,gradle-8.2-src/bin下载慢,以及Kotlin构建慢的解决好久没玩AS了,下载发现装个AS很麻烦,就觉得有必要出个教程了(就是记录一下:嘻嘻)因为以前全删了(退坑了),最近又想玩了所以重新安装一下.因为我安装过了,所以一些无脑的操作就简单略过了,但是必要的操作会很详细排版可能有点乱,见谅(嘻嘻)掐个表(记录一下时间)一.基础配置1.1AndroidStudio下载下载AndroidStudio进入AS官网https://developer.android.googl

Kotlin Multiplatform 多平台路由框架实现

KotlinMultiplatform多平台路由框架实现从开始到实现为什么要自己实现框架实现思路移动端桌面端代码实现【移动端,桌面端】实现,单窗口页面路由文件介绍PageFrame.ktPageConfig.ktPageRoute.ktPageOperator.ktPageFrame.ktPageConfig.ktPageRoute.ktPageOperator.kt代码实现【移动端,桌面端】实现,单窗口页面路由文件介绍WindowFrame.ktWindowConfig.ktWindowRoute.ktWindowOperator.ktWindowFrame.ktWindowConfig.k

Android(Kotlin)连接阿里云MySQL实现登录注册

做课设的时候摸索了好一阵子使用kotlin语言连接阿里云Mysql的方法,现在放出来供其他新手参考少走写弯路。目录实现步骤1.配置阿里云数据库2.Android代码 实现步骤1.配置阿里云数据库登录阿里云账号->阿里云官网购买或者申请一个云数据库RDS MySQL版(我是免费申请使用三个月)->申请免费试用阿里云官网配置结束后,即可点击控制台,点击云数据库RDS点击实例列表,可以看到刚刚申请的数据库实例正在创建中,等待创建完毕。创建完毕后,点击蓝色实例ID进入后,在基本信息中点击设置白名单修改default,将0.0.0.0/0加入白名单返回实例列表界面,点击右侧数据库连接,开通外网地址(后续

Kotlin替换ISEMPTY()& last()带有lastornull()集合中的lastornull()

我想使用类似(下面的代码)之类的东西,但是我认为必须有一个更好的解决方案lastOrNull()而不是使用isEmpty和last()dataclassEntry(valx:Float,valy:Float)varentries:MutableList=ArrayList()if(some){entries.add(Entry(100f,200f)}valfoo=(if(entries.isEmpty())0felseentries.last().y)+100f有一些更好的方法吗entries.lastOrNull()?.yifnull0f?看答案您可以使用Kotlin猫王操作员?:,例如:/

Android kotlin build.gradle.kts配置

1.添加maven仓库1.1.settings配置1.1.1.settings.gradlerepositories{maven{url'https://maven.aliyun.com/repository/public/'}mavenCentral()}1.1.2.settings.gradle.ktsrepositories{maven{setUrl("https://maven.aliyun.com/repository/public/")}mavenCentral()}1.2.gradle配置1.2.1.build.gradleimplementation'com.github.bu