mono for android 深入探究APK包结构

转载自:http://blog.csdn.net/shanghongshen/article/details/38930135#userconsent#

转载预留探究

mono for android 


把APK包解压后可以看到下面的结构


1  先说下mono的大概编译结构


 第一个文件夹  程序集


 第二个文件夹下面是很重要的东西  就是mono的虚拟机  可以打开看到  是so结尾的文件     这是c++编写的虚拟机  这个虚拟机大概是2.8M左右   


 第三个就是资源了  包括图片    layout  等




2 它比java 编写的android多了些什么

        a最后一个文件夹都有

b中间这个文件夹多了2.8M

c第一个文件夹(主要是这个)多了些撒     


而这些程序集中很显然很多都没有用到   只用到了小部分类库  但是默认都会被编译进来   所以造成mono开发的程序非常的大 



3给apk瘦身的编译方法


编译方式


1不连接程序集

2只连接sdk的程序集

3链接所以程序集

什么意思呢  

就是

第一种不管什么只要你引用了程序集 全给你撞进来

第二种ide寻找链接  就是引用  自动编译  把没有用到的类排除  但是只排除sdk中的

第三种  就是排除所有程序集中没有用到的类库


  注意  对于序列化等  以及底层使用序列化的操作  无法找到链接  

可能会被排除使用中的类  造成程序无法使用


解决方法:


可以排除你不想链接的程序集




到底瘦身有什么效果呢  


我没瘦身之前  是 30M的一个程序  

瘦身后只有7M

还是加上  虚拟机的2.8M



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值