用jarsigner对androidapk进行签名

    以前对apk重新打包签名都是用的apktool里面的Auto-sign 工具,后来发现有时候利用该工具对一些apk签名会失败,所以后来就使用 jarsigner这个工具,现记录一下这个工具的使用方法

创新互联专注于原阳企业网站建设,成都响应式网站建设,购物商城网站建设。原阳网站建设公司,为原阳等地区提供建站服务。全流程按需定制开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

    1  首先要生成一个自己的key

    

D:\>keytool -genkey -alias myKeyStore -keyalg RSA  -validity 20000 -keystore myKeyStore

输入密钥库口令:

再次输入新口令:

您的名字与姓氏是什么?

  [Unknown]:  sun

您的组织单位名称是什么?

  [Unknown]:  ze

您的组织名称是什么?

  [Unknown]:  duo

您所在的城市或区域名称是什么?

  [Unknown]:  df

您所在的省/市/自治区名称是什么?

  [Unknown]:  fd

该单位的双字母国家/地区代码是什么?

  [Unknown]:  cn

CN=sun, OU=ze, O=duo, L=df, ST=fd, C=cn是否正确?

  [否]:  y

输入 的密钥口令

        (如果和密钥库口令相同, 按回车):

这里输入密钥库口令: 要输入你的密钥库的指令,并且要记住后面用的着,没有什么意外情况的话,填写了下面的指令以后,就能生成一个 myKeyStore 这个密钥文件了

   2 使用密钥文件来重新签名自己的apk

jarsigner -verbose -keystore myKeyStore -signedjar TestB_signed.apk TestB.apk myKeyStore

D:\>jarsigner -verbose -keystore myKeyStore -signedjar TestB_signed.apk TestB.apk myKeyStore

输入密钥库的密码短语:

   正在添加: META-INF/MANIFEST.MF

   正在添加: META-INF/MYKEYSTO.SF

   正在添加: META-INF/MYKEYSTO.RSA

  正在签名: AndroidManifest.xml

   正在添加: assets/

  正在签名: assets/finalout.dex

  正在签名: classes.dex

   正在添加: lib/

   正在添加: lib/armeabi/

  正在签名: lib/armeabi/libinit.so

  正在签名: lib/armeabi/libsocketback.so

  正在签名: lib/armeabi/libsocketclient.so

   正在添加: res/

  正在签名: resources.arsc

   正在添加: res/drawable-hdpi/

  正在签名: res/drawable-hdpi/ic_launcher.png

   正在添加: res/drawable-ldpi/

  正在签名: res/drawable-ldpi/ic_launcher.png

   正在添加: res/drawable-mdpi/

  正在签名: res/drawable-mdpi/ic_launcher.png

   正在添加: res/layout/

  正在签名: res/layout/login.xml

  正在签名: res/layout/main.xml

jar 已签名。

警告:

未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期

日期 (2069-04-17) 或以后的任何撤销日期之后, 用户可能无法验证此 jar。

输入密钥库的密码短语:

这里输入刚才设置的密钥密码,然后就能够生成签名后的apk了,然后安装即可..


标题名称:用jarsigner对androidapk进行签名
网址分享:http://hbruida.cn/article/ijicod.html