- 博客(29)
- 资源 (11)
- 收藏
- 关注
原创 Android IPC机制:Binder与Aidl
1.序列化与反序列化及android常见IPC方式:1.1Serializable:Serializable是java提供的序列化接口,为对象提供标准的序列化与反序列化操作。serialVersionUID是需要声明的,一般情况下赋值为1L,正常情况下不声明也没关系。但是在某些情况下可能会反序列化失败,这是因为在序列化对象的时候会把ID写入序列化文件中,在反序列化的时候会将这个ID和当前类的s...
2019-05-28 23:22:01
1992
转载 android view的绘制过程。
参考:https://www.jianshu.com/p/5a71014e7b1b 因为view的绘制过程断断续续的看了一些,项目中自定义控件也有使用,不过都是用到其中某一些,完整的理论流程还是理解的不是很透彻。上面简书这篇文章写的很全面,现在加上自己的理解记录一下方面后面查阅。 绘制主要分为三个过程:measure/layout/draw。一:measure测量过程。1....
2018-05-16 17:34:40
257
原创 RxJava原理分析
1.Rxjava的基本订阅流程,上游 Observable和下游上游 Observable的概念1.1基本概念observable和observer通过subscribe方法实现了订阅关系,在需要的时候observable发送事件来通知observer,并且回调observer的相关方法 。Observable:被观察者Observer:观察者sbscribe:订阅,将观察者和...
2014-11-23 23:55:42
813
原创 Okhttp和Retrofit原理分析
1.OkHttp源码首先来一张okhttp源码的完整流程图1.1.RealCall.getResponseWithInterceptorChain方法解析首先看一个典型的同步请求过程public String get(String url) throws IOException { //新建OKHttpClient客户端 OkHttpClient client...
2014-10-08 17:46:31
1252
原创 消息队列和Activity的难点
1.消息队列(Handler, MessageQueue,Message,Looper)1.1Handler的作用:(1)android中最常见的,刷新ui,这里基本就是在主线程创建handler (2)不用刷新ui,仅仅是传递处理消息,包括线程间传递消息和线程内部传递消息,这里基本就是在子线程创建handler。如下:new Thread(new Runnable() { ...
2014-07-15 17:20:59
923
原创 android Window和ViewRootImpl
1.android的窗口结构(Window,PhoneWindow,DecorView)每一个Activity都包含一个Window对象,Window对象通常由PhoneWindow实现。activity--phonewindow--decorview这里没啥问题,但是decorview的内部描述可以参照下面两张图来理解。decorview是一个framelayout下面包含statusBar...
2014-07-14 01:02:53
5315
原创 Android在后台线程和timertask分别实现定期更新时间
简述:这是一类定时功能的原型,用来在后台线程中运行一些定时的服务,比如定时修改时间知识点:1. Android多线程的消息通信2. Java中时间的获取,以及String的格式化3. Android PostDelay 的定期的实现设计:开一个新的Thread每隔3秒, 用来定时修改一个TextView的时间代码:首先是Aci
2014-07-11 00:59:12
7485
原创 activity知识点及常见刁钻问题
1.Activity的生命周期从上图可以看到,最右边下方的Android机器人代表启动一个Activity,经过一系列的操作和过程,经过三个生命周期回调方法,到达金字塔的顶层,爬到顶层就可以供用户操作了。然后从金字塔顶往下,再经过三个生命周期方法,就又到了金字塔的另一边底层,Activity就销毁了。但是当下金字塔的时候,只要没到最下面,都有通道可以回到最顶层。这有几点或许是平时我...
2014-07-07 11:32:10
905
原创 Glide原理分析
glide调用方法比较简单如下,这是一个最简单的例子,后续流程分析就按照这个例子来:Glide.with(this).load("http://u5.mm-img.mmarket.com/rs/res2/marketing_activities/1513240903060.png"1.Glide的基本加载流程1.1几个重点类的解释Glide:glide图片加载的入口类,里面维护着它...
2014-07-06 00:44:00
1114
原创 I/O流之--转换流:InputStreamReader 和InputStreamWriter
一、InputStreamReader类InputStreamReader 将字节流转换为字符流。是字节流通向字符流的桥梁。如果不指定字符集编码,该解码过程将使用平台默认的字符编码,如:GBK。构造方法:InputStreamReader isr = new InputStreamReader(InputStream in);//构造一个默认编码集的InputStrea
2014-07-01 15:30:22
10493
1
原创 Asyncask原理解析
1.AsyncTask工作原理内部维护两个线程池:任务队列线程池(管理任务的,串行的),执行任务线程池(并行的,真正执行耗时任务的)。就按照asynctask的使用过程来分析源码(1).首先创建asynctask实例,需要看构造函数(2).调用execute()方法开始执行异步线程任务package android.os;import java.util.ArrayDeque...
2014-06-30 17:14:00
783
原创 android RemoteViews解析
1.RemoteViews的作用在其他进程中显示并更新view界面,所谓跨进程是因为view界面是运行在系统的SystemServer进程的。系统除了常见的notification和appwidget也就是通知栏和桌面小部件,notificatio是通过notificationmanager.notify方法来实现的,appwidget则是通过appwidgetProvider来实现的appw...
2014-06-25 00:52:00
1640
原创 Asyncask原理
1.AsyncTask工作原理内部维护两个线程池:任务队列线程池(管理任务的,串行的),执行任务线程池(并行的,真正执行耗时任务的)。就按照asynctask的使用过程来分析源码(1).首先创建asynctask实例,需要看构造函数(2).调用execute()方法开始执行异步线程任务package android.os;import java.util.ArrayDeque...
2014-06-19 15:28:13
606
原创 ContentProvider使用难点
1 ContentProvider的生命周期直接看代码实例比较清晰,主要是onCreate和CRUD(增删改查)以及getType。首先需要在manifest声明,android:authorities是contentprovider的唯一标识。(1) query、update、insert、delete存在多线程并发访问,需要做好线程同步。(2) contentprovider的on...
2014-06-17 10:54:29
16842
3
转载 android 创建多线程的几种方法
原文地址:http://www.cnblogs.com/gw811/archive/2012/10/15/2724882.html
2014-06-16 23:48:45
40727
3
原创 service使用难点
1.先start再bind,如何停止一个Service同一个服务可以用两种方式一同开启,没有先后顺序的要求,MyService的onCreate只会执行一次。关闭服务需要stopService和unbindService都被调用,也没有先后顺序的影响,MyService的onDestroy也只执行一次。但是如果只用一种方式关闭服务,不论是哪种关闭方式,onDestroy都不会被执行,服务也不会...
2014-06-16 23:35:21
8688
原创 view的事件体系
1.view的基础知识1.1.view的解释:View是android中所有控件的基类,也可以说是界面层所有控件的一个抽象,ViewGroup也是继承自View的。1.2.view的参数位置View的位置主要是由四个顶点来决定的:left,top,right,bottom,left是左上角的横坐标,top是左上角的纵坐标,right是右下角的横坐标,bottom是右下角的纵坐标。注...
2014-06-16 23:22:21
4986
原创 android 网络编程:显示从网络获取的图片
首先得把这个网络图片转换成java的imputstream流,然后再把这个留转换成一个bitMap. bitMap是可以作为参数传给imageView的。
2014-06-10 14:30:32
986
转载 animation动画小结
声明下,这是转载大神任玉刚的文章:http://blog.csdn.net/singwhatiwanna/article/details/17639987然后自己阅读的时候稍微加上了一些注释。文章实现的是下面这样的一个动画:动画分类View动画:也叫渐变动画,针对View的动画,主要支持平移、旋转、缩放、透明度(alpha,scale,translate,rotate)Drawa...
2014-05-29 14:49:54
1363
原创 Activity的声明周期与启动模式
典型情况下的Activity生命周期1.几个典型的声明周期onCreate:做一些初始化工作,如setContentview加载页面布局资源,初始化activity所需数据。 onStart:Activity正在被启动,这时候activity已经可见了,但是还没有出现在前台因此无法和用户交互,因此我们是看不到它的。 onRestart:Activity被重新启动,activity由...
2014-05-15 15:52:19
721
转载 android 编程--aidl service 高级(远程service)
在上一篇文章中,我们学习了Android Service相关的许多重要内容,包括Service的基本用法、Service和Activity进行通信、Service的销毁方式、Service与Thread的关系、以及如何创建前台Service。以上所提到的这些知识点,基本上涵盖了大部分日常开发工作当中可能使用到的Service技术。不过关于Service其实还有一个更加高端的使用技巧没有介绍
2014-05-12 17:19:25
818
转载 Android桌面悬浮窗效果实现,仿360手机卫士悬浮窗效果
http://blog.csdn.net/guolin_blog/article/details/8689140
2014-04-09 00:22:04
1043
handler发送和接收message的各种方式
2014-07-14
android http通信demo
2014-06-16
android动画例子:tween animation and property animation
2014-06-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人