- 博客(174)
- 资源 (4)
- 收藏
- 关注
原创 SurfaceView、TextureView、SurfaceTexture 和 GLSurfaceView
是与图形渲染和视频播放密切相关的核心类,它们各自有不同的特性和适用场景。理解它们的差异,能帮助你在不同场景下选择最合适的组件!在 Android 中,
2025-07-19 18:38:24
669
原创 子线程不能直接 new Handler(),而主线程可以
场景能否直接 new Handler()原因主线程✅ 可以系统自动初始化Looper子线程❌ 不能默认无Looper,需手动调用关键点Handler必须绑定一个Looper,而Looper需要消息循环()才能工作。子线程若需使用Handler,需按规范初始化Looper,或直接使用。
2025-07-19 17:24:00
446
原创 Android 事件机制详解
Android 的事件机制是指系统如何处理和传递用户的触摸、按键等输入事件的体系,主要包括事件产生、分发、传递和消费四个环节。
2025-07-15 13:25:17
350
原创 JVM 锁自动升级机制详解
JVM 中的锁升级是指 synchronized 锁从无锁状态逐步升级到重量级锁的过程,这是 Java 并发性能优化的核心机制之一。Java 8 的 ConcurrentHashMap 使用的 synchronized 正是受益于这套自动升级机制。
2025-07-13 20:25:15
705
原创 java8 ConcurrentHashMap 桶级别锁实现机制
Java 8 中的 ConcurrentHashMap 抛弃了分段锁设计,采用了更细粒度的(bucket-level locking)实现,这是其并发性能提升的关键。
2025-07-13 20:24:40
626
原创 Java 反射机制详解
反射(Reflection)是 Java 语言的一个重要特性,它允许程序在运行时获取类的内部信息,并能直接操作对象的内部属性和方法。
2025-07-11 19:54:11
364
原创 Sophix、Tinker 和 Robust 三大主流 Android 热修复框架的详细对比
以下是 Sophix、Tinker 和 Robust 三大主流 Android 热修复框架的详细对比,从技术原理、功能支持、性能表现到适用场景的全方位分析:最终建议:
2025-07-10 19:39:09
1077
原创 AndFix、Robust 与 Tinker 热修复框架深度对比
在 Android 热修复领域,AndFix、Robust 和 Tinker 是三种主流的解决方案,它们在实现原理、使用场景和限制条件上有显著差异。
2025-07-10 19:38:39
744
原创 OKHttp 核心知识点详解
2. 同步请求3. 异步请求三、高级功能1. 拦截器(Interceptors)应用拦截器(Application Interceptors)网络拦截器(Network Interceptors)2. 缓存配置3. 超时设置四、请求定制1. 请求头设置2. 表单提交3. 文件上传4. JSON 数据提交五、响应处理1. 响应头读取2. 响应体处理六、高级配置1. 连接池配置2. 代理设置3. 证书锁定(Certificate Pinning)
2025-07-10 19:11:43
432
原创 Android 网络开发核心知识点
Android网络开发需要综合考虑功能实现、性能优化和安全性,选择合适的工具和架构可以使网络层更加健壮和高效。:Facebook开发的Android调试工具。
2025-07-10 19:03:01
927
原创 Android 网络开发核心知识点
Android网络开发需要综合考虑功能实现、性能优化和安全性,选择合适的工具和架构可以使网络层更加健壮和高效。:Facebook开发的Android调试工具。
2025-07-10 18:57:24
642
原创 Java中实现线程安全的几种方式
Java提供了丰富的线程安全机制,开发者应根据具体场景选择最合适的方案,平衡安全性、性能和代码复杂度。:使用CAS(Compare-And-Swap)指令实现无锁线程安全。:使用内置锁(对象监视器)保证方法级别的原子性。:保证变量的可见性和有序性(但不保证原子性):对象创建后状态不可改变,自然线程安全。:每个线程有自己的变量副本,避免共享。:通过线程间通信而非共享内存实现安全。:对关键代码段而非整个方法进行同步。:每次修改返回新对象而非修改原对象。:专门设计的线程安全集合类。
2025-07-10 18:37:16
810
原创 Java 中的多线程实现方式
Java的多线程实现方式随着版本演进不断丰富,从Java 5的并发工具包到Java 8的CompletableFuture和并行流,开发者可以根据具体需求选择最适合的实现方式。(通过第三方库如Netty、Vert.x等实现)
2025-07-10 18:29:51
288
原创 ReentrantLock 与 Synchronized 的区别
ReentrantLock 提供了比 synchronized 更灵活的锁操作,但随之而来的是更复杂的用法和更大的出错可能性。在大多数常见场景下,synchronized 已经足够使用且更安全。只有在确实需要 ReentrantLock 的高级功能时,才应该使用它。核心数据结构// AQS 内部类 Node 表示等待线程// 用于条件队列// AQS 关键字段// 同步状态// 队首// 队尾state 状态0 表示锁未被占用0 表示锁被占用,数值表示重入次数。
2025-07-10 18:24:56
891
原创 Dart 语言知识点总结
/ 基本函数// 箭头函数(单行函数)// 可选参数age]) {?'未知'}');// 命名参数// 函数作为参数callback();
2025-07-10 17:35:08
416
原创 Flutter 知识点总结
这个总结涵盖了 Flutter 开发的主要知识点,可以作为学习路线图或速查参考。实际开发中应根据项目需求选择合适的技术方案。
2025-07-10 17:28:54
732
原创 协程举例学习
例如,在Activity或Fragment的onDestroy()方法中取消所有未完成的协程。在Android的Activity或ViewModel中使用协程时,你应该使用GlobalScope.launch或者在ViewModel中使用viewModelScope.launch来避免内存泄漏。同时,你也可以使用结构化的并发,比如在CoroutineScope中启动协程。launch用于在后台启动一个协程,而runBlocking则用于在主线程中运行一个协程,它会阻塞当前线程直到协程执行完毕。
2025-07-08 19:32:42
427
原创 Android 中的多线程编程全面解析
中大型项目推荐全面采用协程。无论采用何种方案,都需要注意线程安全、生命周期管理和性能优化,才能构建出响应迅速且稳定的 Android 应用。模式发展为以协程为核心的现代并发模型。开发者应当根据项目需求选择合适方案,小型项目可使用。Android 多线程编程已经从原始的。
2025-07-08 19:32:01
535
原创 Mavericks 原理分析
Mavericks 是 Airbnb 开源的一个 Android 状态管理库,基于 MVI (Model-View-Intent) 架构模式,结合了 RxJava 和 Jetpack 组件,为复杂 Android 应用提供可预测的状态管理方案。
2025-07-08 17:36:29
780
原创 RxJava 中 Subscription 与 Disposable 对比
【代码】RxJava 中 Subscription 与 Disposable 对比。
2025-07-08 17:26:25
269
原创 VSYNC 深度解析
VSYNC(Vertical Synchronization)是图形显示系统中的关键同步信号,它协调GPU渲染和屏幕刷新的时序关系。
2025-07-08 16:34:33
997
jython-standalone-2.7.0.jar
2017-01-10
genymotion-arm-translation
2016-12-27
arm-genymotion to translation.zip
2016-12-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人