: 在没有源码的前提下 , 通过反编译 , 反汇编 , 拿到 Smali 代码 , 研究其产品的算法 , 实现途径 ;
接口分析 : 接入一个没有源码的第三方库 , 无法进行调试 , 出现问题后 ,...可以使用逆向的方法 , 查找问题原因 , 解决相关问题 ; 找到问题后 , 修改汇编代码 , 然后重新打包 ;
数据采集 : 分析应用的数据 , 获取该应用的更新内容 , 运营信息 , 在 APP 中可以拿到一些非公开的数据...;
应用破解 : 单机游戏玩家需求 , 游戏修改器 , 或者应用停止运营 , 没有付费渠道 , 可以进行破解使用 ;
调试分析 : 应用打包 , 混淆 , 加固 后上传到应用市场 , 如果某个分发渠道版本出现问题..., 可能就需要调试分析具体的这个 APK 包的问题 ; 结合源码与渠道包进行逆向分析, 查找问题原因 ;
二、Android 逆向原理
----
Android 逆向原理 :
静态分析 : 反编译 ,...反汇编 , 从 .so , .a , .dex 等函数库中提取相应信息 , 主要是分析静态文件二进制数据 ;
动态分析 : 将程序运行起来 , 运行中动态分析数据 ; 如 : 做一些函数拦截 , 拦截