登录网站,浏览更多精彩内容
您需要 登录 才可以下载或查看,没有账号?加入我们
×
$ n+ ]* g- b2 S4 Q; [
2 H( ~% T4 E1 c4 q, ^& S! H" t以下内容是我针对【Android逆向】初识APK所整理的一些内容,希望对需要的人有帮助!" T2 g9 b9 S+ E/ @
新手教程 大牛勿扰8 B+ A+ O+ l! J: D- F
有什么需要改进的地方,希望大家能一起讨论,有什么问题和建议也可以私聊我!希望得到大家的更多支持!
9 S- E( N( z' l* H, A5 _3 i 1、apk是什么?
6 s6 C% S: u- X# L5 [ APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。
& O$ M+ y; u; Y# m apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的简称,即Android Dalvik执行程序,
/ N) _. t( G3 L1 a 并非Java ME的字节码而是Dalvik字节码。Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别。: ]6 h% r! d* V9 x. I# S/ Z
2、流程% k) R- Y1 O& n8 P
打包资源(res/assets/AndroidManifest.xm/Android基础类库)文件,生成R.Java和resources.ap文件
2 P; A9 G8 o" Q) P y+ m; H5 G% ^ 处理AIDL文件,生成相应的.Java文件+ ]; I2 S5 t$ X& Y3 s U2 Z' `, w
编译Java文件,生成对应的dass文件" K8 L& ^3 d, q c; J D q
把dass文件转换成Davik VM支持的dex文件
( c& [. E3 M7 `; d& C' m P' [ .Java→.dass→.dex2 `5 J- x. S1 l$ W2 Q: p1 ?# H
打包生成未签名的.apk文件
0 ~- u/ ^/ O. X* M* }/ v 对未签名的.apk文件进行签名
s. ?) z3 L! C8 h 对签名后的apk文件进行对齐处理5 @+ a& y- q) d2 H
|
+ R8 I# ~: L* `; I4 w/ B4 w |
|