Android-怎样用命令行进行打包
转载请标明出处:http://blog.csdn.net/goldenfish1919/article/details/40978859
1.生成R文件
aapt package -f -m -J ./gen -S res -M AndroidManifest.xml -I D:\adt-bundle-windows-x86_64-20131115\sdk\platforms\android-19\android.jar
-f 假设编译生成的文件已经存在,强制覆盖。
-m 使生成的包的文件夹存放在-J參数指定的文件夹
-J 指定生成的R.java 的输出文件夹路径
-S 指定res目录的路径
-I 指定某个版本号平台的android.jar文件的路径
-A 指定assert目录的路径
2.生成class文件
javac -bootclasspath D:\adt-bundle-windows-x86_64-20131115\sdk\platforms\android-19\android.jar -d bin src\com\example\hello\*.java gen\com\example\hello\R.java
-target <版本号> 生成特定 VM 版本号的类文件
-bootclasspath <路径> 覆盖引导类文件的位置
-d <文件夹> 指定存放生成的类文件的位置
-sourcepath <路径> 指定查找输入源文件的位置
3.打成jar包
cd bin
jar cvf hello.jar *
4.生成dex文件
cd ..
dx --dex --output=bin\classes.dex bin\hello.jar
--output=<要生成的classes.dex路径> <要处理的class文件的路径>
5.打包资源
aapt package -f -M AndroidManifest.xml -S res -I D:\adt-bundle-windows-x86_64-20131115\sdk\platforms\android-19\android.jar -F bin\resources.ap_
-f 假设编译生成的文件已经存在,强制覆盖
-M 指定AndroidManifest.xml的路径
-S 指定res目录路径
-I 指定某个版本号平台的android.jar的路径
-F 指定输出文件完整路径
6.生成apk
java -cp D:\adt-bundle-windows-x86_64-20131115\sdk\tools\lib\sdklib.jar com.android.sdklib.build.ApkBuilderMain hello.apk -v -u -z bin\resources.ap_ -f bin\classes.dex -rf src
-v Verbose 显示过程信息
-u 创建一个无签名的包
-z 指定apk资源路径
-f 指定dex文件路径
-rf 指定源代码路径
7.对apk进行签名,这里使用了Auto-sign工具
cd ../../Auto-sign
java -jar signapk.jar testkey.x509.pem testkey.pk8 ../命令行打包/hellodemo/hello.apk ../命令行打包/hellodemo/hellosign.apk
參考:http://blog.csdn.net/androiddevelop/article/details/10948639
Android-怎样用命令行进行打包的更多相关文章
- iOS 用命令行进行打包
通过命令行编译打包 第一步,打开终端,输入: cd 把项目文件拖到这里(注意:cd后面要有空格,然后再把项目文件拖进来) 回车 第二步,clean工程(默认release版本),在终端输入: xcod ...
- 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0
使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0 网上的 MapReduce WordCount 教程对于如何编译 WordCount.java 几乎是一笔带过… 而有写到的 ...
- 基于命令行编译打包phonegap for android应用 分类: Android Phonegap 2015-05-10 10:33 73人阅读 评论(0) 收藏
也许你习惯了使用Eclipse编译和打包Android应用.不过,对于使用html5+js开发的phonegap应用,本文建议你抛弃Eclipse,改为使用命令行模式,绝对的快速和方便. 一直以来,E ...
- Android Developers:在命令行构建和运行
使用Ant构建脚本构建你的应用程序有两种方式:一种用于测试/调试你的引用程序—debug模式—另一种用于构建你最终发布的包-release模式.无论你使用哪种方式构建你的应用程序,它必须在安装在模拟器 ...
- [Android] 基于 Linux 命令行构建 Android 应用(四):命令行构建
谷歌提供的 Android SDK 支持 Ant 自动构建[1],你可以使用调试和发行两种模式进行构建,两种模式不同之处在于调试模式 Ant 会调用内置的调试密钥,而发行模式调用你提供的私钥. 首先安 ...
- 命令行创建Android应用,命令行生成签名文件,命令行查看签名信息,对APK包签名并编译运行
一.命令行创建Android应用 android create project -n HelloWorld -t android-22 -p HelloWorld1 -k org.crazyit.he ...
- VS使用WinRAR软件以命令行方式打包软件至一个exe
由于项目需要,需要将一个绿色版软件(即无需在C盘写入文件)发给客户使用,要求是只有一个exe文件,双击即可执行. 网上说WinRAR软件创建自解压文件可以实现,链接http://blog.csdn. ...
- Cocos移植到Android-通过命令行交叉编译打包
当我们在Windows下使用Visual Studio开发好Win32平台的游戏程序后,我们需要把它们移植到不同的平台上.Cocos2d-x支持很多个平台,然而,我们不可能介绍全部平台的移植.我们总结 ...
- android学习17——命令行建gradle工程
使用命令行建gradle工程要涉及到几个工具的版本. 1.gradle的版本.这个用gradle -version查到. 2.SDK BuildTools的版本. 这个要先配好SDK的环境变量,然后在 ...
随机推荐
- SNMP中文
SNMP4J 处理中文信息时的问题 http://qsjiangs.iteye.com/blog/1966899
- HDU 1754 I Hate It(线段树)
点我看题目 题意 :又是一道中问题,我就不说题意了.... 思路 : 线段树,这道题跟1166差不多,改一些地方就差不多了. #include <iostream> #include & ...
- 想弄清楚LIBEVENT和EPOLL之类的关系,不要因为走得太急而迷失了方向
要一步一步构架起整个体系, 来日方长. 系统调用级别的EPOLL和函数库LIBEVENT之间,大体关系应该是如何呢? 网上有说法: ~~~~~~~~~~~~~~ libevent对底层多路复用机制的封 ...
- codevs 版刷计划(1000-1099)
Diamond咋都是模板题... 开个坑刷codevs的Master题.巩固一下姿势. 目前AC的题目:1001,1021,1022, 1001.舒适的路线(并查集) 求出无向图s到t路径上的min( ...
- 执行gem install dryrun错误
ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for ...
- Ember.js demo1
<!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-1 ...
- Android-加载透明PNG图片变黑的问题
png和jpg作为两种最常用的图片格式,首先我们要知道他们的区别: 1.从一般图片的外观上来说,他们是无法直接判断的 2.从文件大小上来说,同样一张图png肯定比jpg的大 3.通过查资料咱们可以发现 ...
- S3C2410 实验三——块拷贝、字拷贝(寄存器的理解)
因为笔记做在 evernote 上,博客上就不再重新敲了. http://www.evernote.com/shard/s307/sh/5bd591a1-dbbd-4457-812a-17c08c22 ...
- hdu4293Groups
http://acm.hdu.edu.cn/showproblem.php?pid=4293 这题单拉出来写篇吧 确实不错的一题 将每个人说的话 转化一下 可以算出它处在哪个段中 题目就转换成了求不相 ...
- hadoop2.2编程:自定义hadoop map/reduce输入文件切割InputFormat
hadoop会对原始输入文件进行文件切割,然后把每个split传入mapper程序中进行处理,FileInputFormat是所有以文件作为数据源的InputFormat实现的基类,FileInput ...