自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (2)
  • 收藏
  • 关注

原创 Glide4.11源码分析(三)子线程执行的那些事儿及本地缓存

本@Override public void run() { //略 try { if (isCancelled) { notifyFailed(); return; } //看这个方法 runWrapped(); } catch (CallbackException e) { throw e; } catch (Throwable t) { //略 }

2021-03-29 18:02:58 411

原创 Glide4.11源码分析(二)三级缓存之内存缓存

上文讲了Glide.with(activity)方法的流程,获取到了RequestManager对象,梳理出来了RequestManager和Fragment生命周期绑定的过程。这篇文章我们看看看RequestManager的load过程。RequestBuilder<Drawable> builder = requestManager.load("http://www.xxx.com/pic")先看下返回的RequestBuilder是什么东西> 代码片段9//A generi

2021-03-28 18:37:49 384

原创 Glide4.11源码分析(一)生命周期的绑定

前言Glide库是一个优秀图片下载、展示、剪裁等功能于一体的开源库,开发中经常会用到,但是这么优秀的开源库,内部到底是什么逻辑实现的呢?今天就一起来看一看他的真面目。基本使用源码分析很明显使用的时候就是链式调用,使用了建造者模式,使用起来很方便,我们就按着调用的顺序去逐一分析每一步调用做了什么工作。先来看Glide.with(this)> 代码片段1 /** * Begin a load with Glide that will be tied to the given

2021-03-26 00:54:53 382

原创 隐式启动Activity----------IntentFilter的匹配规则

启动Activity的方法有显示启动和隐式启动,显示启动很简单,不在说明;平时使用隐式启动使用的少,以至于他的匹配规则运用不熟练,今天在此记录一下。隐式启动Activity的时候,需要在Intent中添加过滤规则,这个过滤规则需要与被启动的Activity的过滤规则对应上,而被启动Activity的过滤规则,在AndroidManifest.xml中注册的时候会添加到<intent-fil...

2019-10-31 23:58:28 230

原创 Android8.0发送广播注意事项

今天在做项目的时候,用到广播,需要发送一个自定义广播,测试机的版本是8.0。结果发送的广播收不到,在此记录一下。广播接收器使用的是静态注册<receiver android:name="com.test.broadcast.Broad"> <intent-filter> <action android:name="com.test.broa...

2019-10-24 12:24:44 839 1

原创 面试Java基础之ArrayList和LinkedList的区别

前言      我们在面试的时候,经常遇到面试官问的Java基础问题,今天记录一个经常被问到的问题————ArrayList和LinkedList的区别。二者区别     我们先说结论,然后再从源码角度去看具体实现。前者底层是动态数组实现;后者底层是链表实现。...

2019-10-12 18:17:15 591 2

原创 记录一下Android事件分发机制

前言现在网上已经很多事件分发机制解析的文章了,很多文章讲的很详细。但是发现每次看完相关的文章后,当时看的挺明白,过后就忘,算了还是自己写篇文章记录一下,加深印象。加深理解。储备知识看本篇文章就默认的认为你已经掌握了以下几点:1、事件分发相关的三个方法dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent,其中默认情况下:ViewGroup...

2019-09-12 01:19:29 304

原创 EventBus源码解析(三)———EventBus的注册编译期获取订阅者信息

文章列表EventBus源码解析(一)EventBus源码解析(二)EventBus源码解析(三)前言在EventBus源码解析(一)中,我们着重介绍了基本使用方法,解析了EventBus的注册流程的源码。在EventBus源码解析(二)中,我们着重介绍了EventBus的发送事件的流程及源码是如何实现的。今天,我们将介绍在EventBus3.0中引入的编译时注解及Subscribe...

2019-04-21 18:36:15 466

原创 EventBus源码解析(二)———EventBus事件发送

上一篇文章中我们讲到了事件的注册,本篇文章讲解,事件是如何发送出去的。EventBus的post方法系列先看Post方法

2019-04-19 00:46:44 238

原创 EventBus源码解析(一)———EventBus的注册通过反射方式查找订阅者

前言在公司项目中经常用到EventBus库,它使消息的传递变得相当简单,但是只会用是不行的,今天就来分析一下EventBus的源码。看看它到底是什么原理。基本用法由浅入深,还是先来看一下EventBus是怎么用的,已经把EventBus的使用方式熟读于心的小伙伴,可以忽略此部分内容。这里只写一个最简单的用法,两个Activity之间的传值第一个Activity:public class...

2019-04-19 00:44:00 634

原创 自定义自动换行功能的LinearLayout

前言最近项目中有个需求,就是可以给用户动态添加标签。标签最大的特点就是横向排列,并且可以自动换行,而且标签的内容自定义,所以标签的长度是不固定的。网上这种开源的一抓一大把,懒得找了,所以自己实现了一个。先看一下效果分析问题首先先分析一下这个布局的特点:最大的特点就是自动换行。所以需要根据子view的宽度,计算换行的时机,并根据换行后的子View的高度计算布局的高度。所以自定义ViewG...

2019-04-10 00:24:50 1860

原创 Java基本类型占位数总结

经常把Java基本类型的字节数和位数等一些信息搞混,今天做一个表格,总结一下。类型字节数位数表示范围byte1字节8位-128~127 = -272^727~272^727-1short2字节16位-32768~32767 = -2152^{15}215~2152^{15}215-1int4字节32位-2147483648~214748364...

2019-03-05 13:21:21 864

原创 系统“内存重启”后,Activity和Fragment的生命周期浅谈

前言昨天定位一个线上问题,涉及到Activity和Fragment的生命周期调用先后顺序的问题,今天拿来记录一下这个问题。正常流程先看官方给出的生命周期流程图。Activity生命周期流程图Fragment生命周期流程图对比图这三张图很容易看懂,不多说了,接下来看一下Activity和Fragment的生命周期是如何交错调用的。写一个Activity类,并动...

2019-02-26 15:30:35 676 4

原创 OkHttp3源码分析

基本用法平常开发Android App的时候,经常用到OkHttp,不能只停留在会用的阶段,还要知道其原理。今天就来分析一下OkHttp3的源码。POST请求的基本用法如下: OkHttpClient client = new OkHttpClient.Builder().build(); FormBody body = new FormBody.Builder() ...

2019-02-20 16:09:09 872

原创 Dagger2系列之基本使用

前言    项目中一直都在用Dagger2框架,但是没有系统的研究Dagger2的使用及原理,今天就来写一些关于Dagger2的一些文章,来记录自己研究Dagger2的过程及心得。本篇文章先介绍基本使用起源    研究之前先看一个问题。看如下两端段代码:类Apackage com.dagger2app;import android.util.Log;/** * Created by xi...

2018-04-07 00:01:53 1035 4

原创 Ubuntu云服务器下载并配置JDK及Tomcat

前言阿里云服务器买的Ubuntu,刚买下来没有环境,先从Java装起 两步走: 1、下载Jdk 2、配置环境变量 3、下载tomcat 4、配置Tomcat环境变量下载JDK我安装的JDK1.8就够了 有两种方法:方法1:下载跟服务器匹配的Jdk版本,下到本地,然后通过一下命令将下载的包推送到服务器上scp /User/m...

2018-03-31 17:44:00 285

原创 Mac通过SSH完成免输入密码登录阿里云服务器

前言刚买的阿里云服务器,如果想在服务器上搞点什么东西,需要先登录进服务器,每次还得手动输入密码,太麻烦了。所以想通过ssh快捷登录,记录一下配置过程。主要分三步: 1、拿到mac上的公钥和私钥 2、将公钥放到服务器上 3、配置ssh的config公钥和私钥先查看自己电脑上是否有已经生成的公私钥,在Terminal中输入cd ~/.ssh进入...

2018-03-30 23:49:08 4355

原创 Android之webview遇到的问题记录

Android之webview遇到的问题记录问题一、cookie同步问题有一个需求,在android中需要通过webview打开h5页面,并且需要把登录状态带到h5页面中,可以通过给webview要加载的url设置cookie的方式,同步登录状态。代码如下:public void synCookies(Context context, String url) { CookieMana

2017-06-15 00:59:32 360

原创 Android5.0新特性之Activity切换动画

Android5.0Activity切换动画

2017-03-05 00:57:16 683

原创 Android拨打电话等功能实现及其延伸

Android拨打电话等功能实现及其延伸前言项目中经常用到点击一个button,直接拨打电话的功能。今天就由此功能系统的记录一下相关知识点。一、拨打电话功能有两种方法: 第一种如下:Intent intent = new Intent(Intent.ACTION_CALL);Uri data = Uri.parse("tel:13800000000");intent.setData(data)

2017-01-19 01:34:35 446

原创 【React Native开发】React Native移植原生Android项目(Mac用)

【React Native开发】React Native移植原生Android项目(Mac用)注意:本教程默认已经安装所有的配置,例如react-native、node.js等

2016-04-07 19:53:37 419

基于JSP的网上招聘系统的设计与实现

计算机专业学生毕业设计论文 基于jsp的网上招聘系统,本论文全面的介绍了开发过程,开发手段等

2012-04-23

毕业设计文献综述范文

关于毕业设计文献综述的范文,鉴于很多同学面对毕业设计的文献综述无从下手,现上传一份文献综述供参考

2011-12-14

空空如也

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

TA关注的人

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