- 博客(11)
- 收藏
- 关注

原创 Kotlin协程(Coroutine)的使用以及源码分析
对于了解协程(微线程,Coroutine),其实很早就有协程的概念,在Lua,Python,go语言中较为常见Android在kotlin拓展库kotlinx.coroutines去提供使用。首先讲起进程和线程进程拥有切换和打开的进程表,文件资源、数据资源、独立的内存空间。线程从属于进程,是程序的实际执行者,一个进程至少包含一个主线程,也可以有更多的子线程,线程拥有自己的栈空间。线程具有五种状态:初始化、可运行、运行中、阻塞、销毁。协程协程不同与进程或线程是比线程更加轻量级的存在,一个进程可以拥
2020-07-31 18:04:38
936
原创 Compose - Gradle 7.0+ 升级 8.0+ 问题处理
/ // 设置最大线程数使用,当运行dex-in-process时,默认为4。// // 对依赖的库进行dex 预处理,提升增量构建速度。
2023-08-14 11:55:50
3894
原创 InputContextCallback.waitForResultLocked导致的ANR
InputContextCallback.waitForResultLockedInput dispatching timed out (Waiting to send non-key event because the touched window has not finished processing certain input events that were delivered to it over 500.0ms ago. waitqueue length = 35, head.seq =
2021-03-08 15:29:26
345
1
原创 Kotlin协程导致的RuntimeException
在测试的时候发现协程报出来的问题2020-12-10 17:50:58.877 3078-3078/com.hyfontstudio.fontspro E/AndroidRuntime: FATAL EXCEPTION: main Process: com.hyfontstudio.fontspro, PID: 3078 java.lang.RuntimeException: Unable to stop service com.hyfontstudio.fontspro.ime.core
2020-12-10 18:23:21
429
1
原创 不需要Activity的AlertDialog
private fun loadingAlertDialog() { var layoutParams: WindowManager.LayoutParams? = null val inflate = View.inflate(FontsApp.instance, R.layout.layer_lock_dialog, null) val builder = AlertDialog.Builder(FontsApp.instance, R.style.Tr.
2020-08-04 15:03:19
285
原创 Kotlin数据去重实现distinctBy源码
摘自Kotlin源码package kotlin.collections/** * Returns a list containing only elements from the given collection * having distinct keys returned by the given [selector] function. * * The elements in...
2019-04-15 23:45:16
9706
1
原创 日常速记 -> 关于减少APK体积
title: 包体积记录date: 2018-07-17 11:49:05日常速记 -> 关于减少APK体积附上goole官方apk优化指南网址Reduce your app sizehttps://developer.android.google.cn/topic/performance/reduce-apk-size重点:1.APP结构要先清楚一下 2. AS双...
2019-03-25 16:55:28
294
原创 Android Glide 4.0编译找不到GlideApp
Glide官方文档:Android Studio 在大多数时候都可以正确地处理注解处理器 (annotation processor) 和 generated API。然而,当你第一次添加你的 AppGlideModule 或做了某些类型的修改后,你可能需要重新构建 (rebuild) 你的项目。 无论何时,如果你发现 API 没有被 import ,或看起来已经过期,你可以通过以下方法重新构建...
2018-12-20 15:31:45
1869
原创 Android Glide4.0以上版本保存Gif文件方法
RequestListener<Drawable> 可以直接区别图片类型但保存文件比较繁琐RequestListener<File> 可以直接保存文件但无法区别图片类型以下代码已经实践 有更优的方式请留言private val PATH_CAMERA_IMAGE = "/hanzhi/myImage" public fun loadGlideImageByI...
2018-12-20 15:24:42
1532
原创 日常速记 -> 关于减少APK体积
关于减少APK体积重点:APP结构要先清楚一下AS双击编译好的apkapk本就是一个zip代码阶段避免使用枚举减少不必要的生成的代码减少无用资源so文件,三方Library 网上也是各种软解决 只是提供各种思路能用 in XML 尽量减少png减少无用文件例如 xml;png;string;color;等减少资源分多种 :1.Analyze -> Ru...
2018-12-03 11:15:25
253
原创 Kotlin影响序列化融云自定义消息的注解
/** * 其实是这个Java与Kotlin混合开发的使用问题 * * 当我们使用kotlin去写融云自定义消息时在java类去调用kotlin companion object { CREATOR } 一般语法结构为 Kotlin.Companion.getCREATOR() * 这时在java中去反序列化去解析是有问题的 当我们使用在kotlin companion object { @JvmField CREATOR } 语法调用为 Kotlin.CREATOR * * 在Ko..
2018-04-28 00:20:01
413
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人