打包命令参数详解


aapt: android application package tool,SDK 
通过aapt工具将 资源文件(res)、清单文件(AndroidManifest.xml)生成对应的R.java文件

在项目的根目录下新建 gen目录,并且依次在gen目录下新建清单文件总包名对应的文件目录

例如: 清单文件中包名是org.ngyb.android,那么就在gen目录中新建目录结构为 gen/org/ngyb/android

通过命令生成R.java

aapt package -f -m -J [R文件目录(gen)] -S [资源文件目录(res)] -I [android环境jar(android.jar)] -M [清单文件(AndroidManifest.xml)]

 

[]的参数都是可选参数。

[-d]:  指定一个或多个设备的资源文件被添加,多个资源文件用逗号隔开__

[-f]:  是否覆盖已经存在的文件(添加此参数即为覆盖,否则不覆盖)__

[-m]:  打包资源的文件目录,目录地址是`-J`参数指定__

[-J]:  指定R文件生成的目录__

[-S]:  需要打包的资源文件目录__

[-I]:  指定环境android.jar的文件目录__

[-M]:  清单文件的路径__

 

通过aidl工具 将 aidl文件转化为java文件

aidl -I[项目的源文件目录(src)] -p[aidl框架环境文件(framework.aidl)] -o[aidl输出目录(gen)] [要转换的aidl文件(your.aidl)]

 

通过javac工具,将.java文件转化为.class文件

javac -encoding [编码(gbk or utf-8)] -target [版本(1.6 or 1.7)] -bootclasspath [android环境jar(android.jar)] -cp [依赖的jar(多个用;隔开;结尾)] -d [class文件输出目录] [要编译的java文件(多个用空格分开)]

 

将libs下的jar解压到输出目录中

jar xvf [jar文件]

 

通过dex命令 将class文件转换为dex文件

dx.bat --dex --output=[全路径的输出文件(classes.dex)] [全路径的class文件对应的目录]

 

[全路径的class文件对应的目录] : 如果此目录依赖了其他的jar文件,需要用 |分隔开 命令: dex.bat –dex –output=输出路径 需要转换的class文件对应的路径

通过aapt工具生成资源文件包\

aapt package -f -M [清单文件(AndroidManifest.xml)] -S [资源文件目录(res)] -A [资产文件目录(assets)] -I [android环境jar(android.jar)] -F [输出的文件(resoures.ap_)]

 

生成未签名的apk安装文件(apkbuilder.bat不存在请使用第二种方式)

方式1:apkbuilder [输出的全路径apk] -u -z [全路径打包好的资源文件包] -f [全路径dex文件]  -rf  [全路径的src目录]  -rj  [全路径的libs目录]
方式2:java -cp [sdk\tools\lib\sdklib.jar目录] com.android.sdklib.build.ApkBuilderMain [输出的apk] -u -z [资源包文件] -f [classex.dex文件] -rf [src路径] -rj [libs所在目录]

 

生成签名的apk安装文件

生成签名文件

keytool -genkeypair -alias "ngyb" -validity 365 -keyalg "RSA" -keystore ngyb.keystore

 

-alias : 签名的别名 -validity : 签名的时效 -keyalg : 加密的算法 -keystore : 生成的签名路径

通过签名文件给apk文件进行签名

jarsigner -keystore 签名文件 -storepass 签名文件的密码 -keypass 签名密码 -signedjar 生成的签名文件 未签名的文件 签名的别名

 

转载于:https://www.cnblogs.com/nangongyibin/p/10354687.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值