- 博客(24)
- 收藏
- 关注
原创 Glide生命周期监听原理以及简单应用&利用空Fragment代理Activity
1.介绍Glide如何监听生命周期变化;2.使用空Fragment代理宿主Activity
2024-08-26 14:20:24
984
原创 Android OCR && 谷歌OCR TextRecognition用法介绍
开源免费Android OCR ,使用谷歌 Text Recognition
2024-08-07 16:33:32
1736
原创 Gradle系列(3)——Gradle extension(gradle扩展),如何自定义gradle扩展,AppPlugin,AppExtension原理
AppExtension,LibraryExtension,AppPlugin,LibraryPlugin原理
2024-04-16 16:56:56
1871
2
原创 Gradle系列(2)——如何自定以Gradle 插件
如何实现自定义Gradle插件;kotlin+dsl+buildSrc+gradle plugin
2024-04-10 16:47:27
1282
原创 ViewStub原理,解决约束布局( constraintLayout)ViewStub约束失效问题,解决ViewStub约束失效约束不起作用的问题
ViewStub原理,解决约束布局( constraintLayout)ViewStub约束失效问题,解决ViewStub约束失效约束不起作用的问题
2022-12-03 12:15:43
1671
原创 StartActivity原理(二),Android9.0 Activity启动原理
Activity启动原理;startActivity原理
2022-11-23 00:24:28
779
5
原创 StartActivity原理(一)——Android9.0 Activity启动原理, pauseActivity原理
Android9.0,Activity启动原理,startActivity原理
2022-11-22 02:59:33
558
原创 并发编程——ThreadLocal原理分析,Looper如何和线程关联
说个特别尴尬的事情,最近刚辞职,上上周去极星面试。由于没有什么准备,加之很多东西很久之前看过都忘了,面试官问道我Looper和Thread是如何关联在一起即Looper.myLooper()如何获取到当前线程的looper的时候,我一时想不起来,竟然说了句“ThreadLocal内部维护了一个table,存储了关于线程和变量的key-value,类似map”,当时就觉得不对劲,面试官也就没有再多问,尴尬不已。不仅仅是这个,关于多线程方面的具体原理,cas,锁的原理,死锁……近几个月忘得一干二净,所以趁现在辞
2021-08-04 03:33:19
918
原创 什么是虚拟内存?虚拟内存的原理
虚拟内存最近看Binder原理的时候,讲到一个概念MMap,Memory Map,内存映射,一言蔽之就是物理内存和虚拟内存的映射(这个不是重点)。然而突然产生个疑问——什么是虚拟内存?我大概是傻了,横竖睡不着,坐起身来,看了很多帖子,字里行间写着两个大字“懵逼”。一方面我着急弄清楚Binder、mmap原理,一方面悬在我心里的疑问让我惶惶不可终日,左思右想,还是先弄清楚什么是虚拟内存,毕竟不积畦步无以至千里。坎坷之路什么是虚拟内存?我百度半天,帖子不少,或许是我愚钝理解能力不行,没有一篇帖子能告诉
2021-07-07 00:52:11
15503
7
原创 startService和bindService两种使用方式, 隐式启动、显式启动两种启动方式及生命周期
Service的两种使用方式本文介绍的是app A 启动 app B的服务的方式1. 首先,准备app B:首先继承系统Service,实现自己的Service;public class SimpleSnapService extends Service { private static final String TAG = "SimpleSnapService"; @Nullable @Override public IBinder onBind(Inte
2021-06-21 19:22:25
3797
原创 HashMap(Java8)原理解析&&HashMap扩容机制
HashMap核心变量 /** * The default initial capacity - MUST be a power of two. * HashMap默认容量(数组长度),这个数指必须时2的n次幂 */ static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 /** * The maximum capacity, used if a higher val
2020-09-15 17:41:22
560
原创 Android性能优化(一)—— 启动优化,冷启动,热启动,温启动
标签 : Android架构师之路APP启动方式App启动方式分三种:冷启动(cold start)、热启动(hot start)、温启动(warm start)▲ 冷启动系统不存在App进程(APP首次启动或APP被完全杀死)时启动APP此时,APP的启动将经历两个阶段:第一阶段1.加载并启动app;2.app启动后,第一时间为app显示一个空白的window;3.创建app进程第二阶段系统一旦创建了app进程,app进程就要负责做以下的任务:1.创建app对象;2
2020-09-11 03:49:09
8845
2
原创 再论AsyncTask原理解析
说来有些惭愧,AsyncTask 这么一个当初入门就要学习的东西,这么久来我竟然没有深入了解过它的原理,因为16年从入门的时候就被告知它会引起内存泄漏。正式做项目以来,更是从来没有用过它,所以也从来没有想过了解它的原理。直到前几天,有大佬问起我它的原理,我才发现我对它的了解仅限于下面那段描述性的话,于是决定好好了解一下它。仔细想想,真的十分可笑,当初带我入行的大佬,我认识他的时候,我现在工作年限和当时的他一样。然而真相是,除了工作年限跟他一样,技术能里却差了十万八千里,根本不在一个次元上????。最近一直
2020-08-27 21:15:47
331
原创 再论Handler—Handler事件分发、Handler线程切换原理解析
再论Handler—Handler原理解析Handler,无论你菜鸟还是像我一样的老菜鸟,都无法避免这个亘古不灭的话题,只有了解学会Handler的原理,你才能变成一个出的厅堂下得厨房的优秀的老菜鸟。其实同类优秀的帖子已经很多了,但是为了强化记忆我的理解,还是想再次记一下,我心中的Handler。要介绍Handler,就必须要介绍与它息息相关甚至“同为一体”的其它几个类:Looper、MessageQueue、Message。所以本篇文章就分为三个部分:Handler、Looper、MessageQ
2020-08-25 16:53:58
2443
2
原创 Magic-Hybrid 混合开发架构原理解析
Magic-Hybrid 混合开发架构原理解析题外话。本来年初的时候决定今年上半年写很多篇帖子的,然而后来项目比较忙,我又忙着考试,总之一些其它意料之外的事情,很多,不得不中断了。今天趁有一点时间,赶紧把项目里使用的混合开发架构Magic-Hybrid总结出来。Git hub:Magic-Hybrid1. 两个端1.Web:不管是JS、H5、网页前端,我们统称为Web;2.Native:不管是Android、IOS、app、还是移动端,我们统称为Native。2. 两个方向 —— 一个
2020-06-08 18:19:54
577
原创 Android插件化原理(一)—— 插件类加载、类加载原理、(双亲委托机制)
Acitivity启动原理(一),pauseActivity原理
2020-02-11 21:16:22
2154
2
原创 设计模式--代理模式--深入理解动态代理
代理模式&动态代理什么是代理模式?代理模式(Proxy Pattern)也称为委托模式,是结构型设计模式的一种。当无法或不想直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口。代理模式的UML类图角色介绍ISubject:抽象主题类。该类的主要职责是声明真实主题与代理的共同接口方法,该类...
2019-12-28 05:31:12
537
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人