Kotlin中与Java互操作与可空性、类型映射、属性访问、@JvmOverloads、@JvmField、@JvmStatic、@Throws和函数类型操作详解
一、Kotlin与Java互操作与可空性。
Kotlin与Java互操作性与可空性
Java世界...
路由架构梳理
本文整理一下WMRouter的基本路由逻辑,并剖析相关路由类的设计。
基本元素
...
自定义Android IOC框架
一、IOC简单科普
所谓IOC,即控制反转(Inversion of Control,英文缩写为IoC...
Kotlin新技巧: combine 函数组合多个 Flow
简介
在 Android 开发领域, Kotlin 已成为一种强大而富有表现力的语言. 其...
Flutter迭代版本号更改位置
1:打开yaml,找到version,1.0.0是版本号,+后面是code,一般升级更新都使用code去...
JDK Timer 实现原理分析
说明
本文分析的是 JDK 7
Timer 基本用法
public static void main(String[] a...
Android设计模式源码解析之策略模式
1. 模式介绍
模式的定义
策略模式定义了一系列的算法,并将每一个算法封装...
android SurfaceView、TextureView、GLSurfaceView
刚开始看这几个东西把我搞的晕头转向的…. 本文就来理一下它们的绘制原理:
Surf...
JNI 编程上手指南之 JNIEnv 详解
1. JNIEnv 是什么
JNIEnv 即 Java Native Interface Environment,Java 本地编...
Android 12+ 蓝牙外放问题总结
背景
Android 12 上发现存在蓝牙外放问题,原因是存在多个应用设置通话音量,...
kotlin:引子约定plus约定invoke约定 & in约定 & range约定
引子
假设女生的择偶标准如下:未婚且岁数比我大,如果对方是本地帅哥...
Java SPI原理与源码分析
Java SPI原理与源码分析
概述
SPI是Service Provider Interface的缩写,jdk...
深入理解Chromium的渲染机制
今天我们来聊一聊Chromium的渲染机制,这也是渲染机制系列的第二篇,最近大半年的...
Kotlin | Flow数据流的几种使用场景
一 Flow使用注意事项
多个Flow不能放到一个lifecycleScope.launch里去collect{...
聊聊ViewPager2中的缓存和复用机制
1. 前言
众所周知ViewPager2是ViewPager的替代版本。它解决了ViewPager...
安卓逆向 — APK文件结构
apk文件其实就是一个压缩文件,解压后包含下面内容
1、assets 资源文件(图...
序列化机制深入了解 | Java
序列化是将对象保存在磁盘中,或允许在网络中直接传输对象。对象序列化机制允许...