文章目录

  • 一、Android 类加载器
    • 1、ClassLoader 抽象类
    • 2、BootClassLoader
    • 3、BaseDexClassLoader
    • 4、PathClassLoader
    • 5、DexClassLoader
    • 5、SecureClassLoader
    • 6、URLClassLoader

一、Android 类加载器


Android 中的 类加载器 ClassLoader 继承结构 如下 :

1、ClassLoader 抽象类

ClassLoader 是抽象类 , 是所有 类加载器 ClassLoader 的父类 ;

2、BootClassLoader

BootClassLoaderClassLoader 子类 , 与 Java 虚拟机中的 BootstrapClassLoader 启动类加载器 作用相同 , 用于加载 Java 核心类库 ;

BootClassLoader 是单例类 , 全局唯一 ;

BootClassLoader 是由 Java 代码实现的 , 这与 JVM 中的 启动类加载器 不同 ;

3、BaseDexClassLoader

加载 Dex 字节码文件的业务逻辑就是在 BaseDexClassLoader 中实现的 ;

BaseDexClassLoader 的 333 个子类 ,

  • InMemoryDexClassLoader
  • PathClassLoader
  • DexClassLoader

没有实现核心业务逻辑 , 只是调用父类的方法 , 进行不同类型的操作 ;

4、PathClassLoader

PathClassLoaderBaseDexClassLoader 子类 , 应用中的类 , 都是由 PathClassLoader 进行加载 ;

Android 系统相关的类 , 如 四大组件类 , Android 自带类 , 都是由 PathClassLoader 加载的 ;

5、DexClassLoader

DexClassLoaderBaseDexClassLoader 的子类 , 该类可以加载任意目录下的 DEX 或 JAR 格式的 字节码文件 ;

热修复 就是 加载 SD 卡中的 DEX 文件 , 插件化 也是加载 SD 卡中的 APK 文件中的 DEX 文件 ;

DexClassLoader 在 动态字节码技术 , 热修复 , 插件化 , DEX 加固 等方面使用广泛 ;

5、SecureClassLoader

SecureClassLoader 继承了 ClassLoader 抽象类 , 该类主要实现了一些权限相关的功能 ,

6、URLClassLoader

URLClassLoaderSecureClassLoader 的子类 , 其可以使用 url 路径加载 JAR 文件中的类 ;

【Android 逆向】类加载器 ClassLoader ( Android 的八种类加载器 | ClassLoader | BaseDexClassLoader | DexClassLoader )相关推荐

  1. 【Android 逆向】Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )

    文章目录 一.Android 逆向中使用的 android.permission 权限 二.Android 系统中的 Linux 用户权限 一.Android 逆向中使用的 android.permi ...

  2. Android逆向(一)Android逆向工具(一)

    最近一周时间,在学习和研究Android逆向,接下来一段时间,写一系列Android逆向的博客,来总结和记录自己所掌握的知识,也希望为正在学习Android逆向的朋友带来一点帮助. 首先,简单说一下自 ...

  3. 高通android逆向分析,浅谈Android高通(Qualcomm)和联发科(MTK)平台

    一款CPU好不好是要从多个方面考虑的,并不是说简简单单看一个主频.几个核心数就完了,更重要的是它的综合实力到底有多强,这里面当然也会牵扯到价格问题,性能相似当然是便宜的获胜,这是毋庸置疑的. 事实上, ...

  4. 【Android 逆向】APK 文件格式 ( Android 应用安装 | Zip 文件格式 | 使用 Python 代码提取 APK 文件 )

    文章目录 一.Android 应用安装 二.APK 文件格式 三.使用 Python 提取 APK 文件 一.Android 应用安装 APK 是 Android 应用的安装文件 , 现在也有 AAB ...

  5. 1ke android逆向助手_android: 使用android逆向助手反编译APK

    第一步:下载逆向助手:(链接: https://pan.baidu.com/s/15jtoFDg9LWV80HREeyx5HA 提取码: k527 ) 第二步:将apk文件拷贝到逆向助手的apktoo ...

  6. java拦截器_springMVC入门(八)------拦截器

    SSM框架是java开发最常用的框架组合,作为视图层的框架SPring MVC框架有着极其广泛的应用,很多的小可爱在Java学习的框架阶段存在着诸多的迷茫,今天小编将手把手的带领大家进行三大框架之一的 ...

  7. 垃圾收集器回收种类 以及七种垃圾收集器

    垃圾收集器回收种类 垃圾收集器是垃圾回收算法的具体实现 串行垃圾回收器(Serial) 它为单线程环境设计且只使用一个线程进行垃圾回收,会暂停用户线程 (并行垃圾回收器)Parallel 多个垃圾收集 ...

  8. 擦窗机器人出发点_一种擦窗机器人初步设计与实现

    龙源期刊网 http://www.qikan.com.cn 一种擦窗机器人初步设计与实现 作者:朱彪彪 徐军委 于阳光 安春桥 来源:<智富时代> 2019 年第 08 期 [摘 要]设计 ...

  9. Android逆向之https,android实战项目源码

    超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用层最为广泛的一种网络协议. 发展史 协议 发展 说明 HTTP/0.9 1991年定稿最早的H ...

最新文章

  1. Paper1:HoPE: Horizontal Plane Extractor for Cluttered
  2. JAVA中的异常的触发_java中的异常
  3. python web开发-flask中response,cookies,session对象使用详解
  4. LockSupport
  5. vue v-for 不能自能渲染问题
  6. Spring REST XML和JSON示例
  7. Docker基本使用(一)
  8. iOS 给任意一个view转换为image的方法封装
  9. PHP问题 —— The use statement with non-compound name
  10. flash动画制作成品_Flash如何制作雪糕被吃掉的动画
  11. 进程调度算法-先来先服务、最短作业优先调度算法和高响应比优先调度算法
  12. 龙威PS305D维修案例收集
  13. windows bat 批处理脚本编写指南
  14. 【洛谷P1606】白银莲花池【最短路】
  15. 三星i865刷android,三星亮剑,120Hz+1.08亿+高通骁龙865,这才是安卓机皇
  16. 产品人的三个层次——老吴说产品
  17. 关于SQL 与 NoSQL的区别
  18. Tableau实用小技巧之——双轴图表设置同步轴
  19. 记一次成功的iPhone维修
  20. 机器学习——特征选择(降维)PCA和MDA

热门文章

  1. 输入和学生成绩的输出
  2. HttpClient模拟http请求
  3. 敏捷个人手机应用:如何使用时中法目标
  4. Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败...
  5. Buffer Cache Hit Ratio
  6. easyUI menu动态添加
  7. java中后端拼接字符串返回前台页面换行显示
  8. 连续处理函数reduce
  9. 摄影师张梦格App项目总结
  10. TSVNCache占用CPU的解决办法