文章 2022-02-09 来自:开发者社区

【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 替换 LoadedApk 中的类加载器 | 加载 DEX 文件中的 Activity 类并启动成功 )(二)

二、完整代码示例下面代码中     // 替换 LoadedApk 中的 类加载器 ClassLoader // 然后使用替换的类加载器加载 DEX 字节码文件中的 Activity 组件 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { star...

文章 2022-02-09 来自:开发者社区

【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 替换 LoadedApk 中的类加载器 | 加载 DEX 文件中的 Activity 类并启动成功 )(一)

文章目录前言一、替换 LoadedApk 中的类加载器1、获取 ActivityThread 实例对象2、获取 LoadedApk 实例对象3、替换 LoadedApk 实例对象中的 mClassLoader 类加载器二、完整代码示例三、执行结果前言在 上一篇博客 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( DEX 文件准备 | 拷贝资源目录下的文件到内置存储区....

文章 2022-02-09 来自:开发者社区

【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 使用 DexClassLoader 获取组件类失败 | 失败原因分析 | 自定义类加载器没有加载组件类的权限 )

文章目录一、使用 DexClassLoader 获取组件类失败报错二、失败原因分析一、使用 DexClassLoader 获取组件类失败报错在上一篇博客 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( DEX 文件准备 | 拷贝资源目录下的文件到内置存储区 | 配置清单文件 | 启动 DEX 文件中的组件 | 执行结果 ) 中 , 尝试启动 DEX 字节码文件中的 ....

【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 使用 DexClassLoader 获取组件类失败 | 失败原因分析 | 自定义类加载器没有加载组件类的权限 )
文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | 主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件 )(二)

三、使用 Hook 技术在主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件1、反射获取 ActivityThread 类       // 反射获取 ActivityThread 类 Class<?> activityThreadClass = null; try { ...

文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | 主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件 )(四)

五、Hook Activity 启动流程涉及的完整代码package kim.hsl.plugin; import android.content.Context; import android.os.Handler; import android.util.Log; import java.lang.reflect.Field; import java.lang.reflect.Proxy; ....

文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | 主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件 )(三)

四、用于替换 ActivityThread 中 mH 中的 mCallback 静态代理类静态代理 ActivityThread 中的 final H mH = new H() 成员中的 mCallback 成员 ;该静态代理类的主要作用是 , 在创建的 Activity 示例类之前 , 使用插件包中的 Activity 组件替换之前在 AMS 调用之前使用的 占坑用的 Activity , 就....

文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | 主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件 )(一)

文章目录Android 插件化系列文章目录一、插件包 Activity 启动原理二、分析主线程中创建 Activity 实例源码1、LaunchActivityItem2、ActivityThread三、使用 Hook 技术在主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件1、反射获取 ActivityThread 类2、反射获取 ActivityThread ....

文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | AMS 启动前使用动态代理替换掉插件 Activity 类 )(三)

3、替换 mInstance 成员使用动态代理类 , 替换原来的 ActivityManager 中的 IActivityManagerSingleton 成员 的 Singleton 类中的 mInstance 成员 ;// 使用动态代理类 , 替换原来的 ActivityManager 中的 IActivityManagerSingleton 成员 // 的 Singleton 类...

文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | AMS 启动前使用动态代理替换掉插件 Activity 类 )(二)

三、动态代理类该类持有 mIActivityManager 接口对象 , 当检测到调用 startActivity 方法时 , 拦截该方法 , 在该 startActivity 方法中替换方法中的 Intent 参数 ;package kim.hsl.plugin; import android.content.Context; import android.content.Intent; im....

文章 2022-02-04 来自:开发者社区

【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | AMS 启动前使用动态代理替换掉插件 Activity 类 )(一)

文章目录Android 插件化系列文章目录一、插件包 Activity 启动原理二、需要反射的相关类1、Instrumentation2、IActivityManager3、ActivityManager4、Singleton三、动态代理类四、使用动态代理替换 IActivityManagerSingleton 的 mInstance 成员1、通过反射获取 IActivityManagerInt....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

mPaaS 移动开发平台

mPaaS 源于蚂蚁集团金融科技,为 App 开发、测试、运营及运维提供云到端的一站式解决方案,致力于提供高效、灵活、稳定的移动研发、管理平台。 官网地址:https://www.aliyun.com/product/mobilepaas/mpaas

+关注