Android项目Ant命令与问题记录
来源:互联网 发布:天金加银软件下载 编辑:程序博客网 时间:2024/05/01 07:30
记录几个常用的命令(这里以windows为例)
注意需要将android-sdk-windows/tools加入到PATH环境变量中
查询当前系统可用的android target都有哪些
android.bat list target
生成build.xml
进入到project所在目录,执行
android.bat update project -p ./
在执行这个命令的时候看到好多人误用”–subprojects”,如
android.bat update project -p ./ --subprojects
其实这里的”–subprojects”绝大部分情况下没有必要,它指的是更新子目录下的project,如test project。
清理之前生成的文件
进入到project所在目录,执行
ant clean
如果ant编译时出现以下错误,需要先执行上述的清理命令
(一般Eclipse clean之后会在bin/res下自动生成crunch目录)
[aapt] invalid resource directory name: xxx\bin\res crunch
编译
编译正式版本
ant release
注意:如果没有配置keystore的信息,生成的apk不会应用签名,在设备上无法安装
编译debug版本
ant debug
问题
Unsupported class version number [52.0] (maximum 51.0, Java 1.7)
遇到这个问题的原因是使用的proguard版本最高支持到Java 1.7(我使用的还是SDK自带的,版本是4.7),当Java升级到1.8之后就会出现这个问题。
解决方案有两个:
- 再安装Java 1.7
- 更新progurad版本
显然采用后者更加合适,但这时候我们需要使用javac的参数target来指定生成的兼容版本。
在build.xml文件中找到javac
标签,然后加上
target="1.7"
即可
为什么Android Studio编译混淆不会出现问题
因为Android Studio使用Gradle编译,会自动从maven上下载最新的proguard包到本地,所以也就不会像Ant那样出现问题。
这时我们也可以明白为什么Google一直不更新SDK里自带的proguard版本了。
参考文章
- Android项目使用Ant打包,自动生成build.xml
- 通过Android命令自动编译出build.xml文件
- 为ant指定编译java源码的jdk版本
- ProGuard says Unsupported class version number [52.0] (maximum 51.0, Java 1.7) with sbt-proguard
0 0
- Android项目Ant命令与问题记录
- Android多个依赖项目Ant编译命令
- Android Ant命令
- Android 项目 ANT 打包
- ant 打包android项目
- ant编译android项目
- 【Ant学习】 使用ant打包android项目
- Android用Ant管理项目
- android项目增加ant建构
- 用ant 编译android项目
- 使用Ant编译Android项目
- Ant编译打包Android项目
- Ant编译Android项目详解
- ant Android项目使用详解
- ant脚本编译Android项目
- Flex项目与SSH项目整合问题记录
- Flex项目与SSH项目整合问题记录
- ant 签名android项目 + 打包 android 项目
- 黑马程序员---网络编程(TCP传输)
- ssh框架里面添加数据时,jsp页面中文输入显示问号?解决方法
- JAVA中StringBuffer类常用方法详解
- java算法之一冒泡排序(交换排序)
- iOS应用内部切换语言,不跟随系统
- Android项目Ant命令与问题记录
- 基于XMPP协议的即时通讯教程附Demo
- 95 NSURLSession 断点续传
- PHP sprintf函数
- C的数组
- Enocean Serial Protocol 3 常用测试命令
- Android Toast连续点击只弹一次
- <二叉树 前中后 层序 非递归遍历 c语言实现>
- 注意include .h 文件的使用