如果看过ThreadLocal的源码,你就会恍然发现weakHashMap的源码看着居然有点眼熟。ThreadLocal,WeakHashMap看似八竿子打不着的两个类居然会...
如果看过ThreadLocal的源码,你就会恍然发现weakHashMap的源码看着居然有点眼熟。ThreadLocal,WeakHashMap看似八竿子打不着的两个类居然会...
1 动态代理使用 先看下动态代理如何使用,然后再分析下实现原理 jdk1.8之前动态代理在实现时反射会被频繁调用到,所以在性能上会稍微差一些,但在jdk1.8对动态代理的实现...
关键词:IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter posi...
前言 dialogfragment是google推出用来替换dialog的一种方案,相比较dialog,dialogfragment能更好的管理dialog的展示与消失,以及...
前言 实现这个功能要解决两个问题: 如何使用AIDL进行跨进程双向通信? 如何传输一个2MB大小的文件? 问题1很简单,可以参考AIDL官方文档[https://develo...
引言 最近看了一个开源库的改动,其中里面的一个代码改动引起了我的好奇 ,可以看到作者将阻塞队列从LinkedBlockingQueue换成了SynchronousQueue。...
toast作为android系统发布以来一直伴随的一种提示交互,可以说做android开发的无人不晓。但即使就是这么一个常见到让人觉得平平无奇的系统类,但也存在不得不需要解决...
Android 的安装包签名方案到目前有3个版本,分别是: 最初签名方案V1; 为了提高验证速度和覆盖度在 7.0 引入的 V2; 以及为了实现密钥轮转在 9.0 引入的 V...
前言 现在很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图 上述功能是由Android的WebView实现的,其中涉...
前言 最近在学习kotlin的反射的时候遇到了一些问题,特地记录一下。 正题 在Java中使用Class很常见的就是,xxx类.class,比如我们在startActivit...
摘要: 本文发现了一类OOM(OutOfMemoryError),这类OOM的特点是崩溃时java堆内存和设备物理内存都充足,探索并解释了这类OOM抛出的原因。 关键字: O...
@WLHere 你打印日志看下,livedata主动调用的时候observer对象的值就经过wrap包装后的值
非粘性LiveData-NonStickyLiveData实现非粘性的LiveDatahttps://github.com/WLHere/Snippet/blob/master/util/NonStickyLiveData.java...
removeObserver方法有问题的,系统主动调用的时候就出问题了
非粘性LiveData-NonStickyLiveData实现非粘性的LiveDatahttps://github.com/WLHere/Snippet/blob/master/util/NonStickyLiveData.java...
实现非粘性的LiveDatahttps://github.com/WLHere/Snippet/blob/master/util/NonStickyLiveData.java...
1.关于MediatorLiveData的addSource()方法 从注释来看,addSource()是add一个LiveData对象作为一个source,同时add一个O...
1 基本使用 activity 中的代码 mediator 必须注册 不然 onchange 方法不会回调mediator addSource 方法用来监听strLive 的...
好像不行了,animRtCalzz.getDeclaredConstructor(View.class)一直获取不到构造方法,noSuchMethod,但是我看ViewPropertyAnimatorRT源码中是存在对应构造方法的,我是sdk28 不知道什么问题
RenderThread:实现动画的异步渲染UI 优化系列专题,来聊一聊 Android 渲染相关知识,主要涉及 UI 渲染背景知识、如何优化 UI 渲染两部分内容。 UI 优化系列专题 UI 渲染背景知识 《View...
UI 优化系列专题,来聊一聊 Android 渲染相关知识,主要涉及 UI 渲染背景知识、如何优化 UI 渲染两部分内容。 UI 优化系列专题 UI 渲染背景知识 《View...