简介 MediaCodec是 Android media 基础框架的一部分,通常和 MediaExtractor[https://developer.android.com/...
简介 MediaCodec是 Android media 基础框架的一部分,通常和 MediaExtractor[https://developer.android.com/...
最近把Android studio升级到3.6版本之后,在使用git的pull/push的时候遇到了一个问题。 查了一遍,都是基于 Android studio 3.4版本的...
上一篇我们已经发分析了Launcher启动起来后,如何将应用程序封装成桌面图标,并设置了点击事件监听的整个流程。当点击桌面图标,就会执行Activity的startActiv...
《App的安装过程》一篇我们分析了系统启动后,程序是如何被安装到系统中的。安装完成后,我们会看到桌面将显示一个图标,用于点击启动App,这篇继续分析图标的显示过程。 系统提供...
这个系列会分成《App的安装过程》、《App桌面图标显示过程》、《Activity的启动过程》和《Activity渲染过程》四篇文章,来分析从整个应用安装,到用户点击图标并显...
接着上一篇,MediaPlayerService已经被注册到ServiceManager中了,本篇将接着分析MediaPlayerService服务的获取,以及通过Media...
上一篇对MediaPlayer底层播放器创建做了具体的分析。我们知道,Binder是C/S结构,MediaPlayer.cpp相当于C,而MediaPlayerService...
在《Binder简介》一篇中,我们了解了Binder进程间通讯的大致执行原理,从这一篇开始,通过分析源码来认识Binder底层的调用过程。 Binder结构 Binder采用...
一个点击或触摸事件会被内部封装成MotionEvent对象。而事件分发就是将MotionEvent往子View传递。有View的地方就有Window,View必须依附于Win...
Binder是Android底层实现进程通讯的一种方式,由于它的调用过程比较复杂。本篇暂不涉及源码,只是做一个原理上的讲解,而具体的源码调用,会在后面用一个系列的篇章来分析。...
接着上一篇,with方法获取到RequestManager 对象,它实现了LifecycleListener接口,这意味着,页面生命周期的触发会通知到RequestManag...
Picasso,Glide,Fresco对比 上一篇我们分析了Picasso,这一篇我们来分析Glide源码的调用流程,目前主流的图片加载框架除了Picasso和Glide,...
我们知道,Glide和Picasso是两个非常优秀的图片加载框架,本篇先分析Picasso的源码,后面再用一篇文对Glide进行分析。两者的使用方式虽然差不多,但源码实现有很...
前面已经分析了OkHttp源码的调用流程,通常会搭配Retrofit一起使用。笼统地说,Retrofit只是一个适配器,它内部封装了OkHttp,并不做实际的网络请求工作,而...
2018-06-01 遇到的一点小问题三年前培训教的Android里动画好像是三种:帧动画、补间动画、属性动画。刚开始做项目用了不少,项目最低版本是2.2,为了版本适配还特...
类加载 ClassLoader位于/jre/librt.jar/java/lang/ClassLoader.java中,是一个抽象类。 BootClassLoader是Cla...
在分析消息机制时,我们知道安卓的Looper是通过使用ThreadLocal来存储,以保证每个线程都有自己唯一的一份,下面来分析ThreadLocal的源码 先看以下Thre...
由上篇分析了Ok请求的执行流程知道,无论是同步还是异步,最终得到网络响应,都是通过调用getResponseWithInterceptorChain() 来获取的,其内部实现...