有关zipalign的一些问题

    今天研究用zipalign(压缩对齐)优化APK文件。
    未签名的apk不能使用,也不能优化。签名之后的apk谷歌推荐使用zipalign.exe(位于android-sdk-windows\tools目录下)工具对其优化:
D:\>zipalign -v 4 signed.apk final.apk
    zipalign能够使apk文件中未压缩的数据在4个字节边界上对齐(4个字节是一个性能很好的值)//TODO 需要研究mmap()函数


    注意:

    1.在4个字节边界上对齐的意思就是,一般来说,是指编译器吧4个字节作为一个单位来进行读取的结果,这样的话,CPU能够对变量进行高效、快速的访问(较之前不对齐)。

    2.对齐的根源:android系统中的Davlik虚拟机使用自己专有的格式DEX,DEX的结构是紧凑的,为了让运行时的性能更好,可以进一步用"对齐"进一步优化,但是大小一般会有所增加。


    不过我在运行D:\>D:\android-sdks\build-tools\24.0.0-preview\zipalign -v 4 C:\Users\Administrator\Desktop\signed.apk C:\Users\Administrator\Desktop\final.apk 的时候,出现了 Unable to open 'C:\Users\Administrator\Desktop\signed.apk' as zip archive 这个错误。

经过测试发现是因为编码不符造成的,只要在eclipseini文件里(eclipse.ini)加入

-Dfile.encoding=utf-8 就可以解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值