ARouter解析之路由的秘密
简介本篇主要介绍ARouter如何进行路由的,比如Activity、Fragment、服务等
基本使用初始化路由之后
1ARouter.init(mApplication);
在需要支持页面路由的页面上添加注解(至少两级)
12@Route(path = "/test/activity2")public class Test2Activity extends AppCompat ...
ARouter解析之概述
简介这个库非常值得学习,里面涉及到的技术和编程思想都是不错的
APT 编译器注解处理技术
URL的统一管理跳转的方案
‘服务’的解耦(接口设计)与获取(反射)
多线程处理技术 (CountDownLatch的使用)
拦截器思想、降级策略((AOP的设计思想))、分组加载策略
友好的api设计
整体设计
再进一步抽象就是“邮票”PostCard信息的完善过程,当信息完全填充就可以具体往哪里跳, ...
Clean架构在Android中的应用
1、clean架构简介clean架构相信大家早有耳闻,毕竟是Bob大叔的心血之作,最近又把http://five.agency/blog/android/ 几篇关于clean 架构的文章拿出来读读加深了对该架构的一些理解。clean架构又称“洋葱架构”,这个是由于它的架构示意图得名的
删除一些android项目中使用不到的东西加上我们使用的东西看起来如下图
2、核心概念从最抽象的核心到细节的边缘 ...
动态权限二:源码学习
有比较多的权限库,由浅入深先看简单的开开胃
PermissionGen核心源码分析PermissionGen
该库比较早 看提交是3年前了 通过看该库的readme可以了解这个库的使用方式,通过链式调用比较易于配置
核心类图如下:
将权限涉及到核心api封装到框架之中,干掉冗余函数,使用者只关心功能函数即可。
涉及到的比较核心的一个点就是,通过注解的方式直接回调权限成功、失败的函数
When ...
动态权限一:简介
1、在给app升级动态权限之前需要注意搞清楚一下几个概念1.1、版本号对应的api等级查阅官网可以看出
1.2、minSdkVersion、targetSdkVersion和 compileSdkVersion这几个属性通常在gradle defaultConfig中去配置,作用如下
(1)minSdkVersion指明应用程序运行所需的最小API level,如果系统的API level低于m ...
Service学习小结
service本篇博文主要介绍Service相关知识,具体目录如下
0x00 什么是Service
Service是一个应用程序组件,可以在后台长时间运行的操作,不提供用户界面;
一个应用程序可以启动一个服务,它将继续在后台运行,即使用户切换到另外一个应用
一个组件可以绑定到一个服务与它交互,甚至执行进程间通信(IPC),如处理网络传输、音乐播放、执行文件I/O,与content pr ...
AndFix学习
概述篇AndFix,全称是Android hot-fix。是阿里开源的一个热补丁框架,允许APP在不重新发布版本的情况下修复线上的bug。支持Android 2.3 到 7.0,并且支持arm 与 X86系统架构的设备。完美支持Dalvik与ART的Runtime,补丁文件是以 .apatch 结尾的文件,并且是立即生效的
项目地址https://github.com/alibaba/AndFix ...
注解-编译期AOP:注解处理器APT
0x00 概述前一篇介绍了注解的基本知识以及常见用法,由于运行期(RunTime)利用反射去获取信息还是比较损耗性能的,本篇将介绍一种使用注解更加优雅的方式,编译期(Compile time)注解,以及处理编译期注解的手段APT和Javapoet,限于篇幅,本篇着重介绍APT首先你的注解需要声明为CLASS @Retention(RetentionPolicy.CLASS)
编译期解析注解基本 ...
编译期AOP:JavaPoet来生成代码
0x00 概述上一篇限于篇幅只介绍了APT,这篇来继续介绍javapoet,是square公司的开源库。正如其名,java诗人,通过注解来生成java源文件,通常要使用javapoet这个库与Filer配合使用。主要和注解配合用来干掉那些重复的模板代码(如butterknife和databinding所做的事情),当然你也可以使用这个技术让你的代码更加的炫酷。
0x01 简单使用使用之前要先引入这 ...
ZeusLog
0x00 解决问题
网络请求查看比较麻烦,需要fiddler/charles代理,再格式化json。手机端可以像打印日志一样打印json格式化后的log
系统Log比较挫,限制多多。优化系统控制台log打印
项目地址 https://github.com/xsfelvis/ZeusLog
0x01 ZeusLog主要分为两大块,移动端Log和控制台Log,先上图
移动端主要支持
...









