登录网站,浏览更多精彩内容
您需要 登录 才可以下载或查看,没有账号?加入我们
×
: h0 v# W( ~( r0 E" N5 z
, W6 t& z+ r2 Z* E5 G以下内容是我针对【Android逆向】初识APK所整理的一些内容,希望对需要的人有帮助!1 w: }: v: }1 g3 l. j. e: H* |
新手教程 大牛勿扰
/ x+ X4 @1 l, E2 j 有什么需要改进的地方,希望大家能一起讨论,有什么问题和建议也可以私聊我!希望得到大家的更多支持!- \2 N7 ?% T8 p- t
1、apk是什么?/ {$ U- X+ c" T& ^0 l2 i. I
APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。
) @9 ?4 J1 E1 K" ?5 D apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的简称,即Android Dalvik执行程序,( Q# q R6 h* x1 g" v
并非Java ME的字节码而是Dalvik字节码。Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别。" s( ~0 ?5 L4 b+ i0 P" x' |
2、流程6 L/ L( F9 q4 q% q' C; U o. ]0 z
打包资源(res/assets/AndroidManifest.xm/Android基础类库)文件,生成R.Java和resources.ap文件
- X! t7 N" f1 p. h 处理AIDL文件,生成相应的.Java文件/ L/ ?" x5 t6 ^' y) @
编译Java文件,生成对应的dass文件& {6 Z5 x6 F" S4 _
把dass文件转换成Davik VM支持的dex文件( P8 [& s% n8 \, i7 j6 C
.Java→.dass→.dex# Y' B- g0 H- G
打包生成未签名的.apk文件8 `( ?% p& d- z# ^
对未签名的.apk文件进行签名' p2 c, L% b( l) d2 _/ I: V* w
对签名后的apk文件进行对齐处理
7 i2 ~1 p% T. F' M1 ~9 ? | ! x1 p6 ~ N. D/ T
|
|