android 编译apps,ubuntu下编译apps应用模块的一些问题总结

预编译: . build/envsetup.sh

默认情况下编译会生成apk 和 odex 两个文件,其中apk里面是不包含classes.dex文件的,因此不能直接安装,如果要得到一个完整的apk 需要更改mk文件,有两种办法:

1.只更改需要编译的app项目中mk文件,增加 LOCAL_DEX_PREOPT := false

2. 上面的办法只能更改一个项目,可以将整个framework的默认编译设置一下:

/build/core/java_library.mk

查找 LOCAL_DEX_PREOPT := true

修改为 LOCAL_DEX_PREOPT := false

/build/core/package.mk

查找 LOCAL_DEX_PREOPT := true

修改为 LOCAL_DEX_PREOPT := false

重新加载编译环境  source build/envsetup.sh

这样就不再需要单独为每个模块设置了。

需要注意的两点:

1.编译的时候需要修改代码文件,不然很可能out中得到的apk不是新的,一般来说当你发现mm很快结束,几乎没有打印出什么编译信息的时候你就得考虑是不是没有真正编译。

2.默认的app模块AndroidManifest.xml文件需要按照 常规eclipse项目的AndroidManifest.xml修改下,不然很可能在某些手机上不能安装(安装包解析失败),这主要是因为如下几个因素导致的:

android:versionCode="1"

android:versionName="1.0"

android:minSdkVersion="8"

android:targetSdkVersion="17" />

经过一晚的折腾,总算编译成功了,不容易啊,睡觉。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值