源码分析
文章平均质量分 93
codelang
这个作者很懒,什么都没留下…
展开
-
我写了款依赖检查的插件
写这款工具主要是看了优酷的几篇 向工程腐化开炮 的系列文章,觉得其中的几个点可以通过依赖检查的方式提前找到问题,所以着手找了几个点写了下,并输出 report html 方便查看。一、检查目前该检查工具提供了 5 项内容的检查:so 文件检查64 位 so 未适配检查更安全的导出组件检查未匹配的权限检查uses-sdk 检查1、so 文件检查so 文件检查可以分析出依赖里面包含了多少个 so 文件,并且展示 so 大小,做这个可以辅助 apk 包体积优化来提前分析,哪些 so 文件过大原创 2022-03-08 21:53:25 · 2024 阅读 · 0 评论 -
Android 12 编译之坑
本文文章已首发「扣浪」公众号我们在完成 Android 12 适配之后主干 CI 集成打包没有问题,但在合入另一个需求的时候,立马就报 javac 编译失败,但只要把 compileSDK 降回 Android 11,他就没问题,然后我们针对该异常进行了各种 google,然后查到一篇 stackoverflow 的解决办法:通过升级 jdk 版本为 11 即可解决该问题,然后我们先本地进行了实验,将 jdk 环境升到了 jdk11,确实打包没有问题,由于我们的平台打包机环境用的是 jdk8,所以,我原创 2022-03-08 21:50:07 · 3801 阅读 · 0 评论 -
百分比布局标签布局之FlexBoxLayout
最近在看google的demo,想逼着自己看源码,所以,今天来看看FlexBoxLayout,起初第一次用Flex布局的时候还是在学习react native的时候(虽然现在都好久没玩过了-_-!),今天把google的demo顺着自己的想法又重新敲了一遍,把玩之后看了下源码,确实是有点复杂啊,每个步骤都要进行各种分类,想想那么多的布局种类,往下看的时候我都差点放弃了(基础不好啊),随后会附上dem原创 2017-04-04 19:36:21 · 4286 阅读 · 0 评论 -
从源码到理解--HashMap
好久没更博了,看了最近好多公司爱面试HanshMap与HashTable的区别,所以自己也来一探究竟,想弄个连载,在此做个笔记大致思路首先先来个总结,然后再来说源码,先给大家知道点结果,然后再来顺藤摸瓜会更好理解些,首先HashMap综合了数组和链表的特点, 默认的数组长度为0,并且数组类型为 transient HashMapEntry分步开始数据put操作首先来看看初始化代码HashMap,D原创 2017-03-27 16:02:20 · 1169 阅读 · 0 评论 -
Retrofit2.0源码解析
最近看了一下Retrofit2的源码,感觉并不是很难,但是对于其中的设计方式大为赞叹,怪不得会成为现在最流行的网络请求框架,Retrofit感觉就像是一个包装壳,我不干请求这种脏话,还是你okhttp干吧,毕竟你做得好,在内部来说我就是专门给你检查检查一些url接口的规范,或是是一些Request,你就专心干你的请求就行,对于外部使用者来说,我什么都给你封装好了,你要啥我就给你啥,你想要什么类型的结原创 2017-05-20 14:30:39 · 784 阅读 · 0 评论 -
从源码角度来理解TabLayout设置下划线宽度问题
看了下网上很多的文章来设置下划线宽度的问题,有点杂乱无章,有的博文直接贴代码,无法理解设置的过程和实际的意义,看来只能自己动手才能丰衣足食了。使用 viewPager = (ViewPager) findViewById(R.id.qbdd_viewpager); viewPager.setAdapter(new MyViewPagerAdapter(...原创 2018-04-08 17:31:50 · 646 阅读 · 0 评论 -
LeakCanary源码分析
使用app的build.gradle配置dependencies { debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5' releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'}Application配置...原创 2018-05-08 14:31:28 · 260 阅读 · 0 评论 -
谈谈组件化-从源码到理解
这几天一直在组件化架构方面的知识点,下面主要分析一下“得到”的组件化方案和Arouter实现组件间路由的功能。组件化涉及到的知识点得到的方案最近一会在探索组件化的实现方案,得到是在每个组件的build.gradle给annotationProcessorOptions设置host参数,这个参数就是我们当前组件的Group,apt拿到这个Group名称拼接需要生成的路由表类的全路...原创 2018-06-04 15:35:06 · 966 阅读 · 0 评论