自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (23)
  • 收藏
  • 关注

原创 架构师学习--组件化开发之路由参数传递

本章主要讲解组件化是如何实现组建之间参数传递的,代码基于之前一章内容架构师学习–组件化开发之路由ARouter设计一、如何实现模块之间参数的传递1、通过getIntent()传统方式2、通过javapoet最终生成的文件格式如下:二、代码生成1、创建参数注解2、创建注解处理器(1)遍历Parameters节点(2)解析Parameters节点,并保存到mapmap集合...

2019-07-29 17:00:25 216

原创 架构师学习--组件化开发之路由ARouter设计

使用过阿里开源项目ARouter路由框架的都知道,为组件化开发打开了一扇大门。使用组件化的目的就是解决团队开发,各自负责各自的模块,互不干扰,模块之间能够完全解耦,加快开发效率。这样做还有一个好处就是,如果有一个功能模块不需要了,可以在app中删除该模块的依赖即可,不需要大量的删除代码。核心技术是Javapoet,没有了解它的可以看另外一篇文章javapoet简单实用一、如何实现模块之间acti...

2019-07-29 15:54:42 255

原创 架构师学习--组件化开发之Gradle配置

Gradle其实是一个构建工具,它是用来帮助我们构建app的,构建包括编译、打包等过程。其实AS默认就为我们的app完成构建,并且每一个module的构建过程都是大同小异的,那么我们就可以提取共同点,比如公共的第三方库等,并且在组件化开发中必然离不开它。一、简单使用创建一个工程,默认会构建app,自己新建一个module,命名为library。...

2019-07-26 13:35:11 260

原创 架构师学习--动态换肤

11

2019-07-25 15:43:52 408

原创 架构师学习--内置换肤

一、换肤原理首先需要明白以下几点:setContentView()原理布局加载工程Factory2super.onCreate()原理如何拦截Factory2下面就以上几点进行源码分析1、 setContentView()(1)都知道通过setContentView()能够加载布局,那么布局是xml文件,它是如何加载到内存中的呢?首先跟踪源码,最终会跟到AppCompatDel...

2019-07-24 13:58:15 220

原创 架构师学习--组件化开发之APT使用及JavaPoet

一、概念及作用什么事是APT?全称是Annotation Processing Tool,翻译过来就是注解处理工具,它的作用就是可以在代码编译期间对注解进行处理,并且生成Java文件,减少手动的代码输入,因此它能够使我们编写的代码更加优雅。目前很多优秀的第三方库就是使用APT的技术,比如butterknife、retrofit、enentBus等。二、使用1、在当前工程中创建注解的java ...

2019-07-15 22:59:44 281

原创 Binder原理之PMS工作原理和代码模拟

1111

2019-07-14 14:00:57 437

原创 Binder原理之Apk安装原理

12

2019-07-12 17:05:43 280

原创 Binder原理之PMS、AMS注册到ServerManager

先上一张流程图,稳住军心,对着流程图分析更加有信心一、什么是SystemServer源码位置:frameworks/base/services/java/com/android/server/SystemServer.javaSystem Server是android 基本服务的提供者,是android系统运行的最基本需求,所有service运行在一个叫system_server...

2019-07-11 17:09:05 548

原创 Binder原理之Client端、Server端、Binder驱动、ServerManager

Binder在android中无处不在,它提供了android应用间跨进程的能力。其中aidl接口就是Binder的辅助工具,详解参考文章Binder原理解析附上自己花的流程图

2019-07-11 16:00:15 344

原创 JVM内存管理

在jdk1.8之后元数据区取代了永久代。元空间的本质和永久代类似,都是对JVM规范中方法区的实现。不过元空间与永久代之间最大的区别在于:元数据空间并不在虚拟机中,而是使用本地内存...

2019-07-06 14:24:09 123

原创 架构师学习--Handler实现UI更新原理及手撸

一、Handler原理了解其原理首先需要了解一下4个类。Handler (1)负责从子线程(或主线程)发送消息到消息队列(通过sendMessage等方法) (2)处理消息队列返回的消息对象(通过handlerMessage方法)Message 消息对象(包含what、obj、当前handler等属性)Looper 负责从消息队...

2019-07-05 14:00:38 237

原创 架构师学习--Handler及ThreadLocal

首先引入几个问题:Handerl如何避免内存泄漏 更新view,难道只能在UI线程吗?子线程不可以吗? 子线程中为什么不能创建Handler new Handler的两种方式区别 ThreadLocal用法及原理一、Handerl如何避免内存泄漏1、首先写一段内存泄漏的代码,如下:public class HandlerActivity extends AppCompatA...

2019-07-03 17:01:26 294

原创 架构师学习--MVVM

一、概述M:model层 这里指javabean对象。V:就是我们的布局文件VM:负责绑定view层,业务处理。二、使用1、创建View层activity_mvvm.xml,代码如下:<?xml version="1.0" encoding="utf-8"?><layout xmlns:android="http://schemas.android.c...

2019-07-01 13:58:24 174

mockserver1.zip

mockServer模拟服务器数据请求,使用java命令启动服务器,数据源配置在json文件中,精准匹配数据的请求与返回。

2020-05-29

mockServer+nodejs+express.zip

mockServer模拟服务器请求,方便移动端优先开发,需要配合nodejs启动服务,只需要本地配置好json格式的数据格式即可,使用起来很方便

2020-05-29

LazyFragment.zip

分析v4版本和androidX版本懒加载机制原理,并实现不同版本的懒加载实现。可以直接拿到项目中使用

2020-03-27

MyMvvmMaster.zip

使用MVVM+rxjava2+retrofit+ARouter实现自己的一套app框架,使用起来简单方便。

2020-03-24

MVVM_Adapter.zip

代码实现了MVVM如何与RecyclerView记性绑定实现,列表的加载,点击,以及布局的加载。初学者可以看看,代码提供思路,不保证没有bug

2020-03-23

permissionDemo.zip

6.0系统手机开始,申请权限需要动态申请,市面上的框架也比较多,官方提供的RxPemission。也有使用发射实现的。我这个框架采用了AspectJ+注解的形式完成。使用起来很方便

2019-12-31

MyHuffman.zip

代码支持huffman对图片的压缩,使用jni方式。实现图片的无损压缩,压缩比例20%~90%,可调整图片的压缩质量

2019-12-17

okhttp中连接池实现

代码中包含okhhtp中连接池的设计,包含连接对象的添加,连接对象何时被移除。

2019-08-29

android数据库框架

代码主要提供了一套数据库操作的框架,包括增删改查、数据库的分库、升级等功能。便于扩展

2019-08-21

hook式插件化,兼容5.0~9.0

代码主要处理插件化开发,使用hook的方式,支持5.0到9.0系统,只是一个demo。

2019-08-13

占位式插件化

使用占位式插件化,能够实现插件的安装,及宿主到插件的跳转,插件内部跳转,启动插件服务,注册动态广播和发送广播。另外,对插件中静态广播的注册也做了实现

2019-08-08

组件化ARouter开发完整代码

组件化ARouter开发完整代码,模块之间完全解耦,支持参数注解,类注解

2019-08-01

安卓组件化开发架构,设计思路,代码大全

使用javapoet完成组件化架构设计,纯java代码,兼容性高

2019-07-29

app动态换肤,适配5.0到9.0

app在内置换肤的基础上实现动态换肤,效率高。比普通的换肤效率快至少7倍。兼容性高5.0-9.0都可以使用

2019-07-25

动态换肤,适配5.0到9.0

app在内置换肤的基础上实现动态换肤,效率高。比普通的换肤效率快至少7倍。兼容性高5.0-9.0都可以使用

2019-07-25

app内置换肤,效率高,适配高

用最简单的方式实现app内置换肤,支持自定义控件,运行效率高

2019-07-24

x264与rtmpdump集成.java

里面包含了如何把x264与rtmpdump集成到android studio中

2019-05-30

2.2.4-Shell脚本编写与执行编译ffmpeg库.zip

linux编译ffmpeg,需要首先配置ndk环境。编译静态库需要脚本执行,详解地址https://blog.csdn.net/qinbin2015/article/details/90648208

2019-05-29

bzip2-1.0.5-src.zip

增量更新android端cmake配置需要改文件夹下的一些文件。

2019-05-28

android各种布局的下拉刷新上拉加载更多

属于android工具包,包含scrollview,listview,spandlistview,gridview等布局的下拉刷新,下拉加载更多

2016-01-12

Imageloder加载网络图片,点图片看大图,可缩放

Imageloder加载网络图片,点图片看大图,可缩放。欢迎点评

2015-06-26

复选框多选Demo

包括一个全局的全选按钮,每一项的全选按钮,单选按钮。实现类似淘宝购物车选中功能

2015-06-24

仿淘宝评价图片上传,最多9张

功能实现仿淘宝评价图片上传,点击“+”图标添加图片,最多9张。点击已添加的图片删除图片,框架已搭好。数据可以自己填充。

2015-06-24

空空如也

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

TA关注的人

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