android
文章平均质量分 70
老头儿look_Future
当前知识的展现,是此前知识积累的结果。
展开
-
SharedPreferences的基本使用及apply()和commit()的区别
龙腾四海非一日之功一、SharedPreferences 1、用于保存数据,一般数据为系统配置信息; 2、是以键值对的形式存储到data/data/package-name/shared_prefs/l目录的XML文件中。 3、获取SharedPreferences实例的方式有三种: /*第一种 -- SharedPreferences的文件名是当前类名*/ ...原创 2018-02-28 19:17:23 · 924 阅读 · 0 评论 -
Git命令大全及提交代码到Github
原创 2018-05-08 21:19:08 · 354 阅读 · 1 评论 -
处理相机和相册的照片------目前最好的方式!
一、通过获取相册照片信息得到不为人知的秘密。1、打开相册private void takeAlbum(){Intent intent = new Intent(Intent.ACTION_GET_CONTENT);intent.setType("image/*");// 打开手机相册,设置请求码startActivityForResult(intent, 2);}2、获取照...原创 2018-03-28 20:41:18 · 309 阅读 · 0 评论 -
OkHttp3源码(九) ------ 拦截器
拦截器Interceptor的设计思想——创建拦截器链(后面简称链),执行指定拦截器的方法,根据旧链创建新链,再次执行上述过程,直至全部拦截器执行完毕。 拦截器方法(intercept(…))的主要实现: (1)、对发起的request进行处理。 (2)、调用下一个拦截器,获取response。 (3)、对上一个拦截器返回的response进行处理,最后返回给上个...原创 2018-03-28 18:57:11 · 506 阅读 · 0 评论 -
OkHttp3源码(八) ------ RealCall
RealCall类 —–前面我们讲的是HTTP相关的概念在OKhttp3中是如何通过类实现的 。 Okhttp的请求过程是先组装请求报文,然后将请求报文封装成一个任务,最后交由“网络”去执行这个任务。 而RealCall就是这个任务。我们看一下源码。1、RealCall属性//重连接拦接器 ------ 拦截器我们会在后面的章节讲解final RetryAndFollowUp...原创 2018-03-28 18:38:26 · 514 阅读 · 0 评论 -
OkHttp3源码(七) ------ ResponseBody
ResponseBody抽象类 ——主要是对响应正文的概念的实现。 因为ResponseBody抽象类的子类RealResponseBody实现的很简单,就是持有响应头和读取流。其中大部分功能还是在ResponseBody抽象类中的,所以这里只分析ResponseBody。我们看一下源码。一、ResponseBody类声明public abstract class MyRespo...原创 2018-03-28 18:04:57 · 2820 阅读 · 0 评论 -
OkHttp3源码(六) ------ Response
Response类 —— 主要是对响应报文的概念的实现。 响应报文的结构图 可以看到响应报文的结构和请求报文的结构差不多。只是具体细节有些不同。我们根据响应报文的结构来了解Response源码。1、Respons的属性//得到该响应报文的请求报文final Request request;//返回响应报文用的协议,这个是个枚举类。------对应上图协议版本final P...原创 2018-03-28 17:34:49 · 2375 阅读 · 0 评论 -
Okhttp3源码(五) ------ CacheControl
在学习本篇博客的朋友,如果你对Http首部字段的Cache-Control 字段值不太了解的话,这里强烈建议参见 Http首部的字段及相应的取值内容了解Cache-Control字段值的朋友,都知道它的一个特点,就是——多! 为了简化对缓存的相关操作,OkHttp3对它们做了封装,几乎每一个字段值对应一个属性。我们看一下它的源码。1、CacheControl的属性...原创 2018-03-28 17:12:10 · 489 阅读 · 0 评论 -
OkHttp3源码(四) ------ RequestBody
接下来是对RequestBody抽象类的分析,因为内部实现很简单,所以这里贴出加注释的源码,供大家阅读。对于RequestBody抽象类,我们只需要细看最后两个有具体实现的方法。RequestBody类主要做了获得请求体的数据类型、获得请求体的数据长度、将请求体写入到流中这三件事。我们看一下它的源码。1、两个抽象方法//获取请求体的类型public abstract MediaT...原创 2018-03-28 16:50:16 · 4525 阅读 · 0 评论 -
ContentProvider你未必知道知识点!
网上对于ContentProvider基本使用的文章很多,但是对ContentProvider里面的知识点介绍的很少,这里总结一下自己了解到的。 接下来我会介绍: 1、内容URI是什么? 2、ContentProvider的两个抽象方法onCreate()和getType() 3、内容URI所对应的MIME类型标准写法。 4、内容URI中的通配符。 5、UriMatcher的常用方式。...原创 2018-03-27 20:06:33 · 321 阅读 · 0 评论 -
OkHttp3源码(三)------Header
由于Header类是之前已经分析好的,所以这里直接拿过来就可以了。 之所以之前没有发布这篇博客是因为在学习Header类之前,首先要明白Http首部信息的相关字段及内容,关于这个如果还不太了解请参看 Http首部的字段及相应的取值内容Header类属性: //通过字符串数据的方式维护数据,用于实现获取数据的功能。 private final String[] namesAn...原创 2018-03-27 15:42:27 · 1415 阅读 · 0 评论 -
通过SAX和PULL解析XML
平常我们在需要数据解析时遇到最多的就是解析JSON数据,但是对于另一种数据解析 —— XML数据解析,却不怎么常见。虽然不常见但是有时候也会有需求遇到它,所以在这里记录下在Android中解析它的两种方式。Android对于XML解析提供了两种API—————-SAX和PULL。SAX和PULL的区别:SAX解析器的工作方式是自动将事件推入注册的事件处理器进行处理,因此你不能控制事件的处理...原创 2018-04-01 17:16:52 · 195 阅读 · 0 评论 -
OkHttp3源码(二)------Request
上篇OkHttp3源码(一)——OkHttpClient很荣幸得到评论加关注。Request —— 是对HTTP请求报文概念的具体实现 请求报文的结构图 根据结构图去阅读源码能很好的理解某些属性的真实意义。我们看一下源码。public final class Request { final HttpUrl url; final String method; ...原创 2018-03-26 15:29:06 · 285 阅读 · 0 评论 -
Activity的启动模式及常用的Flag
一、启动模式Activity有四种启动模式,他们分别是: (1)standard(系统默认的启动模式):标准模式,符合标准返回栈的原则,每次启动一个活动(不管返回栈中存不存在这个活动)时,都会将启动的活动压入返回栈中。 (2)singleTop:在启动活动时如果发现返回栈的栈顶已经是该活动,则认为可以直接使用它,不会再创建新的实例,否则就会启动新的活动压入栈顶, ...原创 2018-03-22 09:03:32 · 467 阅读 · 1 评论 -
OkHttp3源码(一) ------ OkHttpClient
关于OkHttp3之前用的时候没有考虑过它的内部实现过程,今天在这里整理记录一下。 接下来我会将OkHttpClient类中常用的方法,内部类、字段加上自己理解的注释,通过看注释了解OkHttpClient的主要用途。public class OkHttpClient implements Cloneable, Call.Factory, WebSocket.Factory { ...原创 2018-03-24 12:21:52 · 683 阅读 · 1 评论 -
本地广播和全局广播的区别及实现原理
一、本地广播和全局广播的区别 1、本地广播:发送的广播事件不被其他应用程序获取,也不能响应其他应用程序发送的广播事件。本地广播只能被动态注册,不能静态注册。动态注册或方法时需要用到LocalBroadcastManager。 2、全局广播:发送的广播事件可被其他应用程序获取,也能响应其他应用程序发送的广播事件(可以通过 exported–是否监听其他应用程序发送的广播 在清单文件...原创 2018-03-23 21:11:16 · 6927 阅读 · 1 评论 -
Fragment的生命周期和FragmentTransaction的主要方法
一、Fragment的生命周期Fragment完整生命周期依次是: onAttach()、onCreate()、onCreateView()、onActivityCreated()、onStart()、onResume()、 onPause()、onStop()、onDestroyView()、onDestroy()、onDetach()。几个主要的方法: onAttach():当碎...原创 2018-03-22 19:49:40 · 8666 阅读 · 1 评论 -
(Retrofit系列一)玩转Retrofit的执行器 ------ OkHttpCall
清新一刻 生活有时就是这么残酷,可能没人关心你的努力,大家只看最后的结果。成年人的世界没有“容易”二字!所谓无心插柳,都是努力后的水到渠成。背景相信现在Android在做网络方面的内容时,首先想到的就是Retrofit。为什么呢? 我这里总结了两条原因: 1、OkHttp用其强大的功力成功打入Android框架内部,(对于OkHttp还不太熟悉的朋友,建议先去了解一下,如...原创 2018-08-05 15:14:39 · 399 阅读 · 0 评论