美文网首页
对apk应用进行签名

对apk应用进行签名

作者: anscor | 来源:发表于2017-11-19 16:33 被阅读0次

准备工作

首先将jdk中的bin文件夹添加至path环境变量中,准备一个未签名的apk应用。

判断是否签名

要判断一个apk文件是否已经进行过签名,使用解压应用(如WinRAR等)打开该文件,查看是否有一个META-INF的文件夹,如果有则代表已经签名;没有则表示没有签名。

使用WinRAR打开一个已经签名的apk应用

将一个已经签名的应用转化为一个未签名的应用方法非常简单,只需要将应用中的META-INF文件夹删除就可以了。

可在解压应用界面(上图)直接删除;也可以先将应用程序的后缀名由apk更改为rar等,再解压,删除,然后压缩,将后缀名改成apk

需要注意的一点是,在压缩时要保持原来的文件结构不变,需要选中所有文件(夹)来压缩,如下国:

使用keytool创建密钥

打开命令行,输入命令:

keytool -genkeypair -v -keystore demo.keystore -alias demo -keyalg RSA -validity 2000

参数说明:

  • genkeypair 生成密钥对
  • alias 密钥库名称,即最后保存的文件名称(demo.keystore
  • alias 密钥别名(demo
  • keyalg 密钥加密算法(RSA
  • validity 密钥有效时间,单位为天(2000天)

而后输入密码:

接着会提示输入城市等信息,回车即可,默认为unknown

确认,输入y(大小写均可),回车即可:

输入别名密码,若想设置不同密码,输入密码;一般情况下回车即可,默认设置相同密码:

完成后会在当前文件夹下创建一个密钥文件(demo.keystore)。

创建完成。

完成后可用keytool进行查看,输入命令:

keytool -list -v -keystore demo.keystore

运行结果:

使用jarsigner进行签名

输入命令:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore demo.keystore demo.apk demo -signedjar demo_signed.apk

参数说明:

  • java 1.8环境下,verbosedigestalg两参数必须加上,否则生成的文件无法安装
  • keystore 所使用的密钥
  • demo.apk 要进行签名的文件
  • demo 密钥别名
  • signedjar 将签好名的应用保存为demo_signed.apk。此参数可省略,省略后直接改变原文件为已签名文件,不会生成新的文件。

运行结果:

看到jar signed字样时表示签名成功。

注:

本文在WINDOWS 10JAVA 1.8的环境下进行测试,如在不同环境下可能会不适用!

相关文章

  • 对apk应用进行签名

    准备工作 首先将jdk中的bin文件夹添加至path环境变量中,准备一个未签名的apk应用。 判断是否签名 要判断...

  • 记录查看系统应用APK签名方式

    【】因为每个公司的业务不同,所以会在某些自研的应用APK上进行签名,下面讲解下如何查看应用APK签名 一、环境准备...

  • Android签名过程详解

    1、本文主要内容 基础知识 手动签名apk 签名工具源码解析 总结 为了保证apk的安全性,必须对apk进行签名。...

  • Android apk 空包签名(记录)

    百度应用平台认领应用需要下载空包APK,对其进行签名再上传,已重新上传应用。 需要在 Java 环境下运行代码。 ...

  • Android签名文件

    在Android应用程序打包成Apk的过程中,为防止生成的Apk被篡改,需要进行签名,生成一个签名包。在Apk的M...

  • 小米应用市场 认领重新签名apk

    Android的apk安装包签名 在上传应用到应用市场的时候需要开发者对应用进行认领,采用Android的apk安...

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

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

  • Android获取App签名信息

    概述: Android对每一个Apk文件都会进行签名,在Apk文件安装时,系统会对其签名信息进行比对,判断程序的完...

  • apk重新签名

    对apk进行重新签名中遇到的问题记录如下 今天使用我周六写的工具对apk进行签名时,报了如下错误 jarsigne...

  • 如何对apk进行签名?

    jarsigner -verbose -keystore android.keystore -signedjar ...

网友评论

      本文标题:对apk应用进行签名

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