自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陈文超的博客

美团猫眼android技术开发~

  • 博客(12)
  • 收藏
  • 关注

原创 源码分析glide中三层存储机制并与常规三层缓存机制对比

转载请注明出处: 源码分析glide中三层存储机制并与常规三层缓存机制对比 地址:http://www.jianshu.com/p/dc8fcf7e69bc目录常规三层缓存机制三级缓存的流程强引用->软引用->硬盘缓存当我们的APP中想要加载某张图片时,先去LruCache中寻找图片,如果LruCache中有,则直接取出来使用,如果LruCache中没有,则去SoftReference中寻找

2017-11-01 12:37:58 708

原创 Gradle升级4.1(插件3.0.0)变化了哪些东西,需要做哪些改变。

Gradle升级4.1(插件3.0.0)变化了哪些东西,需要做哪些改变。转载请注明出处: Gradle升级4.1(插件3.0.0)变化了哪些东西,需要做哪些改变。 地址:http://www.jianshu.com/p/d372cc6802e5目录前言gradle升级4.1(插件3.0.0,as 3.0.0)改了不少的东西,尤其是依赖的变化。所以我们还是需要了解一下,对以后添加依赖库/改动bui

2017-10-30 11:13:36 6834

原创 android gradle 4.1以上依赖的改变:compile->api和implementation

转载请注明出处: android gradle 4.1以上依赖的改变:compile->api和implementation 地址:http://www.jianshu.com/p/d372cc6802e5提前准备升级到gradle插件(gradle-tools)3.0.0:需要gradle版本升级到4.1以上。android studio版本升级到3.0.0以上。依赖使用api和impl

2017-10-25 19:16:19 6934 3

原创 如何实现一个独立于网络请求框架的缓存(与retrofit无缝衔接)

转载请注明出处: 如何实现一个独立于网络请求框架的缓存(与retrofit无缝衔接) 地址:http://www.jianshu.com/p/d372cc6802e5目录1 前言这次说下怎么实现一个与retrofit的网络请求框架无缝衔接的缓存。这个需要的提出是这样的:猫眼/美团/点评使用的网络请求的client并不一致,猫眼使用的是okhttp,美团/点评使用的是Shark 长连接。长连接自带

2017-10-24 16:57:40 805

原创 源码分析glide对线程中断的优化

转载请注明出处: 源码分析glide对线程中断的优化 地址:http://www.jianshu.com/p/d372cc6802e5目录android中我们需要很小心对待线程的创建取、监听、取消。如果不小心处理,可能就会引入内存泄漏,监听的生命周期与宿主不一致导致crash,频繁创建线程对资源的消耗,线程无意义的运行等问题。那么这里对于线程中断,源码分析一下glide对其的优化。对于线程创建

2017-10-20 17:19:44 983

原创 Dalvik下mutidex加载(只是总结备用,并没有分析源码)

mutidex之前度过源码,其实并不难。这里做个总结,自己以后备用(比如mutidex异步加载,插件化等,dex动态加载还是挺重要的)。大家如果想分析下源码,也可以看下MultiDex工作原理分析和优化方案这个博客,分析的很到位。我这里就不赘述了。Dalvik在安装的时候只会把主dex放到classLoader中类型是DexPathList的成员变量pathList。DexPathList持有Dex

2017-10-16 18:51:56 451

原创 Viewholder内部会议纪要以及fragment相关知识总结

内部组会上讲了一下viewHolder在解耦方面的应用( 使用ViewModel解耦页面(含源码分析))。在讲解和讨论过程中,发现对fragment的一些知识点理解不到位。会后查看了相关的知识点并总结了一下:使用 Viewholder方式:ViewModelProviders.of(宿主activity).get(A.class) 其中A extend ViewHolder用处:一个activty内

2017-10-16 14:00:55 855

原创 使用ViewModel共享页面内的数据:ActivityDataBus

使用ViewModel解耦页面(含源码分析)转载请注明出处: 使用ViewModel解耦页面(含源码分析) 地址:http://www.jianshu.com/p/d372cc6802e5目录1. ViewModel源码解析我们从ViewModelProvider入手。 ViewModel通过ViewModelProvider的 * Returns an existing ViewModel

2017-10-10 17:27:07 12700

原创 谷歌官方mvp介绍

转载请注明出处: 谷歌官方mvp介绍 地址:http://www.jianshu.com/p/d372cc6802e5目录前言这个wiki是我很早之前看mvp框架时候写的,之前没发到网上,现在也贴上吧。现在来看,这个框架并不适合 大量的业务实用,因为fragment实在是太重了,并不利于页面中业务的模块化。可以看下我的这一篇博客,对这个mvp框架的改进: android 官方mvp框架优化:l

2017-09-19 12:01:49 753

原创 Lifecycle-aware Components google官方生命周期组件

Lifecycle-aware Components 组件转载请注明出处: android 官方mvp框架优化:lifecycle-mvp,像前端那样组合式写页面地址:http://www.jianshu.com/p/d372cc6802e5目录很多情况下,业务模块需要activity的生命周期,由此会产生很多级联耦合。google官方提供了Lifecycle-aware 组件可以帮助我们去掉这

2017-09-18 15:15:39 1974

原创 android 官方mvp框架优化:lifecycle-mvp,像前端那样组合式写页面

转载请注明出处: android 官方mvp框架优化:lifecycle-mvp,像前端那样组合式写页面 地址:http://www.jianshu.com/p/d372cc6802e5目录1 前言虽然在标题上,自己很随意的起了这么一个名字。其实并不是说它起个英文名就牛逼了。说白了,它其实就是mvp的思想加了lifecycle-component,然后加入了分层的思想,最后用TypeFactor

2017-09-17 21:55:53 2939 1

原创 美团猫眼android模块化实战-可能是最详细的模块化实战

写这篇博客的初衷首先一句话概括:我想把这几个月做的事情记录下来,并且希望尽量详细,希望读者读了这篇文章能够知道模块化具体每个步骤都做什么,而不是大致的了解。 现在很多人都在谈模块化,网上有一大堆的博客实践都在讲这个。很多谈的只是模块与模块之间的解耦,并且大部分讲的是通过router路由进行解耦,其他谈的不多,而且不乏泛泛而谈。但将一个app真正做到解耦,运行。需要解决的事情远远不止解耦。

2017-09-12 18:51:23 13668 12

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除