读书笔记
清甘茶
纯属笔记,方便自己查看,请谨慎阅读
展开
-
Android 插件化基础
Android 原生语言为java,java文件通过java虚拟机后会变为.class文件,java文件虽然能在JVM中运行,但是想在Android运行环境中执行还需要特殊处理,那就是dx处理,它会对.class文件翻译、重构、解释、压缩等操作。dx 处理会使用到一个工具 dx.jar,这个文件位于 SDK 中,具体的目录大致为 你的sdk根目录/build-tools/任意版本里面。使用 d...原创 2020-01-05 07:06:15 · 788 阅读 · 0 评论 -
Android PackageManagerService和ClassLoader
PackageManagerService(PMS)是用来获取apk包信息的,AMS总是会使用PMS加载包信息,将其封装在LoadedApk类对象中,然后就可以从中取出AndroidManifest声明的四大组件信息了,在下载并安装App的过程中,会把apk存放在data/app目录下。App安装流程Android系统使用PMS解析这个apk中的AndroidManifest文件,包括:...原创 2019-12-14 17:07:48 · 887 阅读 · 0 评论 -
Android Activity的工作原理
Activity 是四大组件中用的最多的,也是最复杂的,本篇文章就重点总结Activity的启动和通信原理AMS(AcctivityManagerService)从字面意思理解看是管理Activity的,其实四大组件都归它管PMS(PackageManagerService)ActivityManagerNative(AMN)ActivityManagerPoxy(AMP)Ap...原创 2019-12-14 12:46:36 · 830 阅读 · 0 评论 -
ARM汇编
汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言,目前在嵌入式开发、单片机开发、系统软件设计、某些快速处理、位处理、访问硬件设备等高效程序的设计方面有很多应用。ARM处理器是一种16/32位的高性能、低成本、低功耗的嵌入式RISC微处理器,由ARM公司设计,然后授权给各半导体厂商生产,它目前已经成为应用最广泛的嵌入式处理器,在逆向分析一款应用软件的时候,了...原创 2019-12-11 23:19:58 · 476 阅读 · 0 评论 -
Android 防止逆向
软件逆向分析的出现必然会出现防止逆向分析的操作,这里介绍五种防御方式:①代码混淆技术②针对不同的逆向工具的保护技术(如IDE、JD_GUI等)③增加逆向难度(java代码Native化)④动态加载技术⑤代码验证技术代码混淆代码混淆也称花指令,是将计算机程序的代码转化为一种功能上的等价,但是难于阅读和理解的形式的行为,代码混淆可以用于程序编译而成的中间代码,执行代码混淆的...原创 2019-11-27 14:14:47 · 1396 阅读 · 0 评论 -
android root原理
android 获取设备root权限Android 获取Root其实和linux切换Root用户是一样的,在Linux下我们只需要执行“su”,或者“sudo”,然后输入Root账户和密码就可以获取Root权限了(其实就是将uid和gid设置为0),Android 5.0之前的系统都不支持多用户切换,对”su“ 也没有做密码验证,Android系统没有”sudo“命令,且很多厂商从手机的安全考...原创 2019-11-25 12:41:02 · 771 阅读 · 0 评论