12339 发表于 2019-7-22 13:03:40

【Android逆向】:APK打包流程




以下内容是我针对【Android逆向】初识APK所整理的一些内容,希望对需要的人有帮助!
新手教程大牛勿扰
    有什么需要改进的地方,希望大家能一起讨论,有什么问题和建议也可以私聊我!希望得到大家的更多支持!
    1、apk是什么?
   APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。
   apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的简称,即Android Dalvik执行程序,
   并非Java ME的字节码而是Dalvik字节码。Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别。
2、流程
       打包资源(res/assets/AndroidManifest.xm/Android基础类库)文件,生成R.Java和resources.ap文件
            处理AIDL文件,生成相应的.Java文件
            编译Java文件,生成对应的dass文件
            把dass文件转换成Davik VM支持的dex文件
            .Java→.dass→.dex
            打包生成未签名的.apk文件
         对未签名的.apk文件进行签名
         对签名后的apk文件进行对齐处理
**** Hidden Message *****

页: [1]
查看完整版本: 【Android逆向】:APK打包流程