美文网首页
ionic android apk签名以及重签名

ionic android apk签名以及重签名

作者: 小圈儿33 | 来源:发表于2019-10-06 20:48 被阅读0次

1.使用keytool 生成数字证书

keytool -genkey -v -keystore myApp.keystore -alias myApp.keystore -keyalg RSA -validity 36500

  • keytool是工具名称-genkey意味着执行的是生成数字证书操作
  • -v表示将生成证书的详细信息打印出来,显示在dos窗口中
  • -keystore myApp.keystore表示生成的数字证书的文件名为“myApp.keystore”(myApp可以取自己的名字)
  • -alias myApp.keystore表示证书的别名为“myApp.keystore”,可以不和上面的文件名一样
  • -keyalg RSA表示生成密钥文件所采用的算法为RSA
  • -validity 36500 表示该数字证书的有效期为36500天,意味着36500天之后该证书将失效

执行该命令过程会要求输入密钥口令以及其他信息,看着填就行。

2.使用jarsigner为app签名

jarsigner -verbose -keystore myApp.keystore -signedjar /Users/*****/myApp.apk  /Users/*******/android-release-unsigned.apk myApp.keystore

  • -verbose 表示将签名过程中的详细信息打印出来,显示在控制台窗口中
  • -keystore myApp.keystore 表示签名所使用的数字证书所在位置
    -signedjar (后面的路径是你要签名apk的路径)表示给Apk工程目录下的android-armv7-release-unsigned.apk文件签名,签名后的文件为该路径下的myApp.apk
  • myApp.keystore 表示证书的别名,对应于生成数字证书时-alias参数后面的名称

3.由于ionic cordova build android命令打包出来的apk文件已经被默认的debug.keystore文件签名过了,所以在用以上命令进行签名的时候。会报这样的错误

jarsigner: 无法对 jar 进行签名: java.util.zip.ZipException: invalid entry compressed size (expected 21213 but got 20064 bytes)

这是由于对一个已经签名了的apk进行签名的原因,网上的一些方法,比如改后缀名等等,我自己测试,没有生效

后来,我执行ionic cordova build android --release,对这个命令生成的apk进行签名,才可以正常签,大概是这个apk没有默认的签名吧。

4.使用zipalign工具优化已签名的apk(非必须但建议这么做)

 zipalign -v 4 notsigned.apk signed.apk

说明:

  • zipalign是工具名称,-v表示在DOS窗口打印出详细的优化信息;
  • notsigned.apk signed.apk 表示对已签名文件notsigned.apk进行优化,优化后的文件名为signed.apk

如果命令不生效,需要cd到zipalign所在的文件夹地址,可执行一下命令

find ~/Library/Android/sdk/build-tools -name "zipalign"

然后执行./zipalign -v 4 notsigned.apk signed.apk,即可对文件进行签名,但是我对debug.apk如此操作的时候,每次签名都失败,但是对ionic cordova build android --release 生成的apk进行签名,可以签名成功,但是也不能正常安装运行。

最后,我用的3中所说的方法,签名成功了。

参考博文:https://blog.csdn.net/xqq580231/article/details/78930497

相关文章

  • ionic android apk签名以及重签名

    1.使用keytool 生成数字证书 keytool是工具名称-genkey意味着执行的是生成数字证书操作 -v表...

  • 查看apk签名信息和第三方应用的签名信息

    Android如何查看应用签名信息 介绍Android如何查看自己的应用签名及三方APK或系统APK签名信息,包含...

  • apk签名验证和数字签名原理

    一、Android apk的签名文件 1.1、apk 签名文件 android apk解压之后有如下几个文件 其中...

  • Ionic2 安卓签名打包

    Ionic2提供build和run命令,这种情况生成的apk都是通过其自带debug签名,要生成自己签名的apk,...

  • Android 混淆相关 签名

    写给Android开发者的混淆使用手册 三分钟知晓Android APK 混淆 签名 打包 加固 重签名 全流程 ...

  • Android APK 重签名

    对APK 进行在线 加固后,Apk体积一般会变大,而且Apk会无法直接安装,因为缺少了你的签名,是的。所以你需要对...

  • Android APK V1 签名原理

    对于 Android 开发者而言, APK 签名的重要性不言而喻。Android 7.0 后 APK 签名已经从基...

  • Android APK V1 签名原理

    对于 Android 开发者而言, APK 签名的重要性不言而喻。Android 7.0 后 APK 签名已经从基...

  • 2018-10-14【android签名】

    android签名的应用-- 禁止未经授权签名的apk安装 最近项目有需求: 只有使用特定签名签的apk才可以安装...

  • Android签名

    1.介绍:Android系统安装APK的时候,首先会检验APK签名,如签名文件不存在或者校验签名失败,会拒绝安装。...

网友评论

      本文标题:ionic android apk签名以及重签名

      本文链接:https://www.haomeiwen.com/subject/jtucuctx.html