Android设计模式源码解析之Builder模式
1. 模式介绍
模式的定义
将一个复杂对象的构建与它的表示分离,使得同样的...
Kotlin 进阶 | 不变型、协变、逆变子类型泛型中的子类型不变型协变逆变PECS 原则 & POCI 原则类型投影推荐阅读
引入泛型之后,子类型的概念变得复杂,好不容易用刚学会的泛型定义了方法,用起...
【Jvm】Jvm类加载机制
类加载时机
虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验、...
App Crash 详解
一、App Crash 概述
二、检测Crash 问题
三、Android vitals
四、分析App Crash
...
插件守护进程模型
Replugin与VirtualApk很大的一个不同就是: 对于插件的管理,它支持单独开辟一个...
进程间的同步
在看Replugin源码时,发现在对插件apk文件解析之前,对这个文件加了一个ProcessL...
Android TabLayout总结
TabLayout基本属性:
- background:背景颜色
- tabTextColor:默认文本颜色
- ta...
Android Jetpack系列
Android Jetpack介绍
Foundation:基础
Architecture:体系结构
UI:视觉交互
B...
Kotlin基础-for循环return、break、continue
一、前言:
java中return、break、continue的含义:
1、break:不仅可以结束其...
Android性能优化建议
磁盘
SharedPreferences
我们知道SharedPreferences底层是使用xml文件来实...
Kotlin | 使用vararg可变参数
背景
一般在项目开发中,我们经常会在关键节点上埋点,而且埋点中会增加一些额...
kotlin泛型
泛型使用方法
在类上使用泛型
类上面使用泛型,需要把泛型声明在类名后...
JDK11版本特性
JDK11 是继JDK8后又一个长期支持版本(LTS) ,
2018年9月25日,Oracle 官方宣布 Java...
Android 面试之必问Android基础
1,Activity
1.1 生命周期
正常情况系,Activity会经历如下几个阶段:
onCrea...
虚拟机Android Dalvik 虚拟机介绍
1.Java 语言在Android 上运行流程
2.虚拟机发展过程
3.Android Dalvik 模式
4.And...
Kotlin | 深入理解协程
@[toc]
Kotlin协程
协程由程序自己创建和调度,不需要操作系统调度,所以协...
Flutter安装配置
Mac 配置Flutter环境
算法 – 回溯
如何尝试走迷宫呢?遇到障碍物就从头 “回溯” 继续探索,这就是回溯算法的形象解释...
JNI 编程上手指南之 Native 访问 Java
本文接着介绍如何在 C/C++ 中访问 Java,主要从以下几个方面来讲述:
访问 Ja...

