Mutidex

framework

Posted by Cc1over on October 21, 2018

Mutidex

分包

apk
   --AndroidManifest.xml
   --R                   // 资源文件
   --resource.arsc       // 资源索引
   --assets              // 不进行编译加工的原生文件 
   --lib                 // apk的so库
   --META-INT            // 签名信息
   --classes.dex
 // 分包后
   --classes1.dex
   --classes2.dex

ClassLoader

  • BootstrapClassLoader 纯C++实现的类加载器,没有对应的Java类,主要加载jre/lib/目录下的核心库
  • ExtClassLoader 主要加载jre/lib/ext/目录下的扩展包
  • AppClassLoader 主要加载CLASSPATH路径下的包

    Android_ClassLoader

  • PathClassLoader 加载/data/app目录下的apk文件,即安装了的apk
  • DexClassLoader 加载路径需要在创建DexClassLoader时传入,可以加载任何apk/dex/jar

Ant

  • custom_rules.xml
  • ${sdk.dir}/tools/ant/build.xml
  • -post-compile
  • -pre-build
  • -pre-compile

    未完待续