导航:首页 > 程序命令 > 命令行签名apk

命令行签名apk

发布时间:2025-02-04 01:40:32

1. android开发 怎么给apk文件用已有的签名文件进行签名,不用eclipse

给apk文件签名主要分三步:
1、创建证书
2、签名
3、优化(可选)
1)使用jdk的keytool工具生成签名用的证书> keytool -genkey -v -alias CERT -keyalg RSA -keysize 2048 -validity 10000 -keystoreCERT.keystore 创建过程需要输入一些标识信息和密码,一些重要的参数值说明如下(根据自己的需要要进行相应的修改): CERT.keystore ---- 证书保存的文件名 CERT ---- 证书的别名 10000 ---- 10000天的有效期 2048 ---- 默认为1024 bits,Android 建议使用2048 bits或更高其他的详细信息可以使用keytool -help查看帮助 证书生成后使用如下命令可以查看证书的信息:> keytool -list -alias CERT -keystore CERT.keystore
2)使用jdk的jarsigner工具对apk文件签名> jarsigner -verbose -keystore CERT.keystore to_sign.apk CERT 签名过程需要输入证书的密码,一些重要的参数值说明如下(根据自己的需要要进行相应的修改): CERT.keystore ---- 证书保存的文件名 CERT ---- 证书的别名 待签名的apk文件根根目录下如果有文件夹“META-INFO”,请先删除(重新签名就需要这样做)。如果不想创建过程输出太多信息,可以删除“-verbose” 。上述签名会直接覆盖原来的文件,如果不想被覆盖而签名为另外的新文件 signed.akp,只需将 to_sign.apk 改为 -signedjar to_sign.apk signed.akp 即可。签名后可以使用如下命令验证是否签名成功: > jarsigner -verify to_sign.apk 如果需要查看更详细的验证信息,可修改为:> jarsigner -certs -verbose -verify to_sign.apk
3)使用android sdk的zipalign工具优化已签名的apk文件> zipalign -v 4 unaligned.apk aligned.apk 注意要在签名后再zipalign。这个工具不是jdk自带的,而是在%ANDROID_HOME%\tools\zipalign.exe。

2. 怎么使用命令对APK包进行签名

上面命令中各选项说明如下。
-genkeypair:指定生成数字证书
-alias:指定生成数字证书的别名
-keyalg:指定生成数字证书的算法,使用RSA算法
-validity:指定生成的数字证书的有效期
-keystore:指定所生成的数字证书的储存路径
输入上面的命令后按回车,会出现以交互方式让用户输入数字证书keystore的密码/作者/公司等详细信息。
备注:这一步时生成属于你们公司/你的数字证书,这一步只需要做一次即可。一旦数字证书创建成功之后,只要在该证书有效期内,可以一直重复使用该证书。
2.生成未签名的APK安装包。在Eclipse中右击Android项目,在弹出的菜单中找到“Android Tools -->Export Unsigned Application Package...“菜单项,Eclipse弹出一个保存文件的对话框,当用户选择储存文件后单击”Finish”按钮即可生成一个未签名的APK安装包。
备注:这一步是生成一个未签名的APK按转包,如果已经有未签名的安装包,那么该步骤可以跳过
3.使用jarsigner命令对未签名的APK安装包进行签名。JDK的安装目录下的bin子目录下提供了jarsigner.exe工具进行签名。在命令行窗口输入如下命令:

3. 安卓手机,如何用APK签名工具对APK进行签名求详细方法和步骤。

方法一: 命令行下对apk签名(原理) 创建key,需要用到keytool.exe (位于jdk1.6.0_24\\jre\\bin目录下),使用产生的key对apk签名用到的是jarsigner.exe (位于jdk1.6.0_24\\bin目录下),把上两个软件所在的目录添加到环境变量path后,打开cmd输入 D。

4. APK重新签名或者更换APK签名版本

在某些特殊情况下,需要对已经生成的apk进行重新签名,或者对已经生成的apk更换签名版本(v1/v2/v3/v4)。如何实现呢? 可以通过命令行对已生成的apk进行处理。

apksigner.jar通常包含在Android SDK中可。路径一般是在Android SDK/build-tools/ {SDK版本} /lib/apksigner.jar
不同的SDK版本中均有一个,取最新版本的就好了。

使用压缩软件打开apk,删除包内 /META-INF/ 文件夹及文件夹内所有文件,并重新压缩文件。

准备好签名证书及相关密码和需要刚处理过得apk文件
示例:

执行命令

接着输入证书保护密码及别名密码。

可以从此命令的输出中看出当前生成的apk签名情况。

可以通过如下命令行参数进行控制
--v1-signing-enabled true
--v2-signing-enabled true
--v3-signing-enabled false

使用的签名版本还跟apk编译时使用的最低SDK版本有关, 即min-sdk-version的值。如果设置的值大于等于26,即使添加--v1-signing-enabled true 也无法通过上述步骤签V1版本的签名--仅有V2签名(Android Studio也是)。
可以对最后生成的apk通过执行如下命令尝试:

阅读全文

与命令行签名apk相关的资料

热点内容
程序员越来越困 浏览:865
女朋友java程序员 浏览:338
魔兽世界加密货币 浏览:783
程序员打卡日记 浏览:766
车间压缩空气有水怎么处理 浏览:835
java类调用php 浏览:475
php时间控制 浏览:807
用流程图表示算法分类 浏览:931
本地git文件夹误删除怎么恢复 浏览:748
java快速开发平台开源 浏览:996
java实战从入门 浏览:155
javahello程序 浏览:13
java系统输出 浏览:934
430单片机存储 浏览:396
私人云php源码 浏览:449
解压系统内核 浏览:802
java精确两位小数 浏览:839
安卓系统如何看游戏帧数 浏览:435
生产节拍仿真app哪个好用 浏览:439
光遇安卓渠道怎么转 浏览:422