首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
水煮鸡蛋也好吃
掘友等级
Android
|
@宇宙中心边上30公里处
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
323
文章 315
沸点 8
赞
323
返回
|
搜索文章
最新
热门
全新版本LeakCanary2源码解析
1. 前言 可见LeakCanary是适用于Android内存泄露检测库。 当我们分析内存泄漏的时候,会使用MAT去分析hprof文件,整个流程相对繁琐。 这个库的出现就是为了解决上面的问题,可以帮助开发人员大大减少OutOfMemoryError崩溃。 使用了新的Heap分析…
黄油刀法:ButterKnife
1. 前言 他来了,他来了,他带着黄油刀走来了。 2. 介绍 也就是说 这的库是 关于Android视图中方法和变量的绑定。 大概意思就是 使用这个工具开发的人在变少,建议使用数据绑定。 不过我们还是要来学习一个他的源码。 3. 正文 可以看到我们会先从BINDINGS中获取C…
妙不可言的Retrofit
1. 什么是Retrofit? 大概意思也就是针对 Java 和 Android的 一种类型安全的HTTP库. Retrofit是Square开源的一款优秀的网络框架,它不会自己去请求网络,而是对OkHttp进行了封装。 仅仅会使用还不够,学习源码有助于我们更好的成长。 2. …
Android的第三方库-RxJava:RxJava的线程切换
实际项目中经常会有一些数据获取操作,这就需要使用到RxJava的线程了。 所以让我们来看看RxJava的线程切换。 现在我们对源码来进行分析。 在这里传入的参数 this 其实就是 当前创建的Observable( 就是 ObservableCreate)将它封装成 Obser…
Android的三方库 - RxJava:RxJava的使用和基本订阅流程
他的意思就是 一个通过可观测的序列来组成异步和基于事件的库。 总的来说就是方便我们异步编程。 在这里面一共产生了四个事件:One、Two、Three、结束。 其实这样的非正常创建是内部将这些信息包装成onNext()这样的事件发送给观察者。 之所以会这样,是因为RxJava为了…
图片三级缓存:LruCache的原理
图片的加载一直是Android开发中重要的一环,处理不当的话很容易就会造成OOM,尤其是当我们需要使用大量图片的时候,图片的缓存技术就至关重要了。 图片的缓存流程: 图片需要从缓存中获取的时候,先从内存缓存中获取,如果没有的话,再从本地缓存中获取,如果还没有的话,就只能从网络中…
数据结构和算法:插入排序
找到合适的位置插入。 判断 44 < 47 , 那么不需要再和前面的元素进行比较了,因为前面都是有序的。 此时 这个数组就通过插入排序完成了排序。 可知 手中的牌是有序的,那么我们在为抓取的牌找寻合适的位置的时候,我们可以使用二分查找。 从时间看出,优化查找方式对时间的提升还是…
数据结构和算法:选择排序
1. 算法思想 2. 特点 3. 使用场景 因为算法的时间效率是取决于比较的次数,所以当数组 N 比较小的时候使用。 4. 示例 这样就进行了一次交换,将最小的 10 交换到了第一个元素。 判断 14 < 37 ,min = 14 。 这样所有的元素都排序完毕,数组也是从小到大…
数据结构和算法:冒泡排序
它的工作方式就像是 可乐中的气泡,越轻的气泡就会慢慢的浮到上面,在排序中,越小的元素经过交换也会慢慢的浮现在数列的顶端。 此时此刻存在一个无序的数组,我们希望它能从小到大的排序。 那么对于上面的无序数组,我们应该先去比较 29 和 10 ,此时我们发现 29 > 10 ,那么我…
个人成就
文章被点赞
27
文章被阅读
9,748
掘力值
273
关注了
84
关注者
6
收藏集
3
关注标签
29
加入于
2017-01-18