Google爸爸在今年(2020年)的Jetpack库里面更新paging组件,推出了Paing3。按照Google爸爸文档的描述,Paing3完全使用的是kotlin,...
Google爸爸在今年(2020年)的Jetpack库里面更新paging组件,推出了Paing3。按照Google爸爸文档的描述,Paing3完全使用的是kotlin,...
前言 Gradle插件在Android中的应用很广泛,很多字节码插桩方案就用到了这方面的知识,Android官方提供了很多可用的插件,比如apply plugin: 'com...
1 引入 如何高效地实现以下界面? 有好几年findViewById实战经验的我,感觉并不难啊。一般会 1.先定义一个User的Model类,数据来自JSON解析; 2.创建...
我一般面试技术分两方面了解面试者,一是测重问面试者细节的地方,看对方是否真如简历上所说对XX“精通”、“熟悉”、“有一定的见解”,有实践经验的积累。别一种是侧重考察对方对问题...
在 Android 中使用 RxJava 经常会用到 observeOn 这个操作符来完成线程的切换,比如网络请求之后切换到“主线程”,通常会这么写: 然而我遇到一个奇怪的问...
没耐心自己分析源码的同学,还可以参考Stay录制的视频版Retrofit分析-漂亮的解耦套路(视频版) 万万没想到Retrofit会这么火,在没看源码之前,我简单的认为是因为...
1. 前言 本文的源码是基于JDK1.7,JDK1.8中HashMap的实现,引入了红黑树,在后面的文章会写到。后面还有一篇LinkedHashMap的解析:图解Linked...
Android面试总结(算法篇) 快速排序 每次取一个基准值,然后每次从基准值左边和右边取值,找到基准值左边比基准值大或等于的值,找到基准值右边比基准值小或等于的值,然后左边...
AOP:面向切面编程(Aspect-Oriented Programming)。如果说,OOP如果是把问题划分到单个模块的话,那么AOP就是把涉及到众多模块的某一类问题进行统...
你这代码贴的有点乱
Android 内存检测工具介绍1.内存抖动 短时间内有大量对象创建销毁,它伴随着频繁的GC,比较典型的就是字符串拼接造成的内存抖动 内存抖动会产生很多的内存碎片,造成内存不连续,在申请内存的时候就有可能造...
卧槽。发现自己被人写到博客里了
Android room数据库基操写这篇博客的一部分原因来自一位安卓大佬的嘲讽: 这个能忍?不能! 1、这篇文章将介绍Room的基本用法 2、room的组成和简单介绍 一般情况下,如果要使用room,一般要了...
什么是线程池?为什么要使用线程池? 将线程池化,需要运行任务时就从里面拿出来一个,不需要了就放回去,不需要每次都new出来线程复用,节约资源,在操作系统中,每个进程能开启的线...
写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
判断是对象是否应该被回收 垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还“存活”着,哪些已经“死去”了。 引用计数算法 引用计数算法(Reference ...
Android 消息处理机制估计都被写烂了,但是依然还是要写一下,因为Android应用程序是通过消息来驱动的,Android某种意义上也可以说成是一个以消息驱动的系统,UI...