Android打包流程

Android打包流程

在这里插入图片描述
图为典型的Android应用模块的编译流程
Android编译流程的步骤:

  1. 打包资源文件Resource Files,生成R.java文件(AAPT:Android Asset Packaging Tool)
  2. 处理AIDL文件,生成java代码(AIDL:Android Interface Definition Language,实现进程间的通信)
  3. 编译代码文件(Source code),生成对应的.class文件
  4. .class文件转化为dex文件
  5. 将dex文件和编译的资源文件组合成成apk(apk-builder)
  6. 使用调试或发布密钥库签名(jarsigner)
  7. 应用优化,减少运行时占用的内存(zipslign:归档对其工具 —> mmap内存映射 —> 减少运行时消耗的内存)

ps:

  • 如果您使用的是 apksigner,则只能在为 APK 文件签名之前执行 zipalign。如果您在使用 apksigner 为 APK 签名之后对 APK 进行进一步更改,则签名将会失效。
  • 如果您使用的是 jarsigner,则只能在为 APK 文件签名之后执行 zipalign。

ps2:

  • 我们经常直接解压一些apk的时候会发现有很多的classes.dex文件,默认的dex文件应该是一个的,但是每个dex文件的方法数不能超过65535。我们只要在glide下配置multiDexEnabled true就好了
    某解压后的apk
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值