自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 资源 (2)
  • 问答 (17)
  • 收藏
  • 关注

原创 KMP跨平台之数据库

跨平台数据库方案

2026-08-08 16:01:29 223

原创 网络请求之SessionID VS Token

当APP登录账户时,跟sessionID/Cookie方案一样,服务端收到请求后也需要去数据库里验证,验证通过后,服务器开始"造"Token:把用户信息(UserID、角色、过期时间等)放进 Payload,用服务器私钥对 Header + Payload 算出一个签名(Signature),把三部分拼在一起,生成一串 JWT 字符串放在对客户端的回复体中。(1)sessionID/Cookie机制虽然单个占用内存很小,但是当用户量很大时,其消耗的内存仍是一大开销,而Token机制无此开销。

2026-07-02 18:30:15 265

原创 FileKit访问Android图片为何不需要权限?

FileKit

2026-06-24 14:38:13 212

原创 Compose Multiplatform的中文乱码问题

解决CMP在Web上中文乱码的问题

2026-06-18 20:17:31 267

原创 移动开发跨平台方案之RN/Flutter/KMP/CMP

移动开发领域跨平台开发方案介绍

2026-06-05 14:58:41 352

原创 Android UI为什么由XML转向Compose

比较XML传统UI方案和Compose方案

2026-06-03 21:38:26 658

原创 http协议发展史之v1/v2/v3

http发展史及各版本区别

2026-05-27 17:48:27 705

原创 QUIC协议

QUIC协议简介

2026-05-27 17:40:29 447

原创 异步数据流

一些实现异步的API

2026-05-11 17:14:10 405

原创 Kotlin协程的运行原理

协程的底层逻辑

2026-05-09 23:32:40 434

原创 Kotlin的协程

Kotlin协程

2026-05-09 19:48:22 630

原创 Java的虚拟线程

Java的虚拟线程讲解

2026-05-06 21:30:26 285

原创 Kotlin的by

委托

2026-05-02 15:10:23 471

原创 Kotlin的内联函数

如果Kotlin最初发布时一个函数是普通函数,后来感觉该函数性能敏感,需要改成内联函数,此时如果编译器不为其生成如上的普通Java方法,那么旧的代码想要调用的方法就没有了。也就是,该函数原来非内联函数,编译后生成了普通的Java方法,如果改成了内联函数后就不再为其生成普通的Java方法了,那旧代码就无法运行了。尤其对于一些高阶函数,它们有些参数是lambda形式的,如果传给它们的不是inline函数,其执行机制将按照Java的套路来——创建匿名对象,如果是inline函数,则可避免这些,性能开销会更小。

2026-04-30 20:27:46 479 5

原创 Kotlin使用体验及理解1

Kotlin学习笔记

2026-04-29 16:53:36 492

原创 AMS的启动和原理

AMS的启动和作用

2026-04-26 23:48:47 417

原创 搭建本地的源码查询服务器

本地搭建一个源码查询服务器

2026-04-24 20:36:31 500

原创 Android Binder机制

Android Binder机制原理

2026-04-13 19:59:10 473

原创 从开机到应用呈现经历了什么

(翻译:受精卵) 的进程,从zygote进程开始就有Java相关的东西了,zygote是 Android 系统中所有 Java 进程的父进程,它会创建出ART(android 运行时环境),加载框架层,并fork出一条 SystemServer 进程,SystemServer则会开启AMS、PMS、蓝牙等几十种android开发中经常用到的系统服务,其中。复制到CPU里执行,于是bootloader作为一颗即将燎原的“星星之火”启动了——后面所有的程序都是bootloader引火烧起来的。

2026-04-10 11:51:47 87

原创 Java的垃圾回收

Java垃圾回收的方法

2026-04-09 10:01:23 429

原创 Java的运行时数据区

试想,线程在执行的时候,方法的调用顺序是 方法1 -> 方法2 -> 方法3 -> ... 这种嵌套调用,而且最后被调用的那个方法执行完毕后也就又返回到了上一个调用的方法,也就是方法调用是一种 后进先出 的顺序,恰好符合 栈 的形式。它是方法区的一部分。每条线程都有这么一个虚拟机栈区域,它是一块内存,但是内存是有限的呀,如果不做限制,内存就会很快耗完,尤其如果程序出错导致出现无限循环调用方法(比如递归)的时候,这块栈区就会一直增大。与虚拟机栈作用类似,也是线程私有的,只是它是线程存放本地方法的栈帧的。

2026-04-08 13:10:26 257

原创 软件架构发展史之MVC/MVP/MVVM/MVI

MVC、MVP、MVVM、MVI的软件架构发展史

2026-04-03 07:45:00 473

原创 Android的序列化方案比较

Android多种序列化方法的比较

2026-03-30 09:00:00 479

原创 Android各版本主要新特性

Android 5Android 6Android 7Android 8Android 9Android 10Android 11Android 12Android 13Android 14

2026-03-26 15:07:08 339

原创 Compose中的rememberUpdatedState

rememberUpdatedState使用场景

2026-03-13 18:47:05 77

原创 Java/Kotlin静态方法不具备多态性

解释为什么Java/Kotlin的静态方法不支持多态

2026-03-03 19:50:40 321

原创 自研APP--手机之间互传文件的工具

Kotlin+Compose编写出的Android手机之间互传文件和数据的工具。

2026-02-26 18:22:19 72

原创 Java的泛型设计

Java泛型的目的和原理

2026-02-26 16:34:56 782

原创 使用coil加载图片更新不及时

最近在使用coil的 AsyncImage 加载一张网络图片,地址是固定的,例如一直都是 http://192.168.0.1/avatar,但是发现一个现象,当服务器端把图片换了的时候,AsyncImage加载出来的仍然是旧图,进一步研究则发现,AsyncImage根本就没有发出请求,而是发现请求地址没有变,就直接复用了本地缓存,导致图片更新滞后,解决办法 关闭缓存,如下所示。

2025-09-02 15:57:00 189

原创 引入coil3引发的异常source must not be null

引入coil3引发的异常source must not be null

2025-08-05 09:58:07 453

原创 Java中的synchronized和锁

介绍Java中synchronized和Lock的原理并做比较。

2025-06-25 17:46:18 1204

原创 Android的Dalvik和ART

Dalvik和ART的比较

2025-06-11 21:28:58 1058

原创 一文读懂https

https的原理概述及报文展示

2025-04-23 17:52:55 1502

原创 网络分层模型

网络模型简介

2025-04-23 09:06:49 653

原创 一个port是否可以同时连接多个Http请求

一条TCP连接被多个http请求复用的原理

2025-04-22 14:28:49 400

原创 一个既简单又诡异的问题

一个非常简单又非常考验基础的场景

2025-04-20 12:31:04 219

原创 volatile及先行发生原则

volatile和先行发生原则

2025-04-17 09:16:51 892

原创 Java内存模型

Java内存模型屏蔽硬件和系统差异的原理

2025-04-16 14:07:16 588

原创 java的类加载器及其双亲委派机制

个人理解,仅供参考。java是跨平台的,运行的是字节码,每次运行时都是读取字节码然后执行字节码,类加载器就是把字节码读取进内存的一个工具,进入内存后才能有后续的步骤。而字节码的来源可以多种多样,可以是java代码编译出的一个.class文件,也可以是从网络或其他文件中读取出的二进制字节流。有了类加载器你就可以自己定义去哪里读取字节码。。

2025-04-15 17:49:24 502

原创 应用(客户端)开发、框架开发、驱动/系统开发的关系

应用开发、客户端开发、框架开发、驱动开发、系统开发的区别

2025-04-11 17:37:59 922 3

Android手机互传文件APP 支持WiFi直连和WLan两种方式

支持Android 8+的系统,可在手机之间互传各类文件和联系人。

2026-02-26

VSS使用手册

VSS使用手册,PDF格式,字迹清晰,可放心使用

2012-07-30

SVN1.8中文版使用教程手册

TortoiseSVN1.8中文版使用教程手册

2014-01-15

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除