文档章节

android apk 签名

 国仔饼
发布于 06/23 14:23
字数 362
阅读 9
收藏 0
点赞 0
评论 0

创建key,需要用到keytool.exe (位于C:\Program Files\Java\jdk1.6.0_10\bin目录下),使用产生的key对apk签名用到的是jarsigner.exe (位于C:\Program Files\Java\jdk1.6.0_10\bin目录下),把上两个软件所在的目录添加到环境变量path。

虽然下面是给Android apk签名的例子,但是同样适用于jar。

1、生成密钥

打开cmd输入

C:\Documents and Settings\mzba>keytool -genkey -alias demo -keyalg RSA -validity 40000 -keystore demo.keystore

 

相关说明:

       -genkey             产生密钥

       -alias demo        别名demo

       -keyalg RSA       使用RSA算法对签名加密

       -validity 40000   有效期限4000天

       -keystore demo.keystore 

2、使用密钥签名

C:\Documents and Settings\mzba>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo

相关说明:

 

       -verbose                                                         输出签名的详细信息

       -keystore  demo.keystore                                密钥库位置

       -signedjar demor_signed.apk demo.apk demo 正式签名,三个参数中依次为

                                                                                      签名后产生的文件  demo_signed.apk

                                                                                      要签名的文件    demo.apk

                                                                                      密钥库别名demo

注意:

签名时会要求你输入生成密钥时设置的密码。

如果签名时出现以下错误 jarsigner: 无法对 jar 进行签名: java.util.zip.ZipException: invalid entry compressed size (expected 1060 but got 1081 bytes),那说明apk已经签名,需要先将apk里的META-INF文件夹删除。

本文转载自:

共有 人打赏支持
粉丝 0
博文 28
码字总数 5568
作品 0
深圳
PhoneGap/Cordova Android应用签名发布系列问题处理收集

PhoneGap/Cordova Android应用签名发布注意事项 Android APK 签名比对 android获取签名,兼容5.0 Android APK 签名比对,防止软件被破解使用 用apktool和dex2jar反编译 Android proguard代码...

巴顿
2015/02/11
0
0
重新签名Android pre-install APK

重新签名Android pre-install APK Android,APK,签名Android, APK, 签名

迷糊
2011/01/20
0
2
Android及Robotium学习总结【环境变量,真机调试及根据id模拟按键】

Keyword:Android,Robotium,自动化测试,黑盒测试,已知id如何模拟按键 纯属爱好,最近学习了Android及其自动化测试,总算对Android有了个大概的了解。 毕业后就是用的C,从未用过java,并且...

AlexMahoneFBI
2014/10/27
0
0
Android通过源码编译apk获得系统权限

Android中的应用程序如何获得系统权限? 在 android 的 API中有提供 SystemClock.setCurrentTimeMillis()函数来修改系统时间,可惜无论你怎么调用这个函数都是没用的,无论模拟器还是真 机,...

lxp198837
2012/06/12
0
0
Android(React Native)打包apk

RN在打包前要生成bundle文件,否则打开app闪退 打开终端,进去项目打开服务:react-native start 进入项目android/app/src/main/目录下新建一个assets文件夹 再打开一个新的终端进入项目根目录...

Chason-洪
2017/10/30
0
0
Android:apk签名

一、android apk签名有几种方法? 1、利用jdk工具进行apk签名 2、利用Eclipse中的ADT对apk进行签名 二、每种签名方法具体怎么操作? 1、利用jdk工具进行签名: a、运行dos,cd到apk所在的目录...

天外来客1101
2013/07/04
0
0
Janus签名漏洞(CVE-2017-13156)原理与利用分析

  *本文原创作者:Tasfa,本文属FreeBuf原创奖励计划,未经许可禁止转载   0×00 简介   前言:去年比较严重的洞,以比较浅显的方式学习记录一下,网上有很多其他深度分析文章,也可借...

FreeBuf
05/17
0
0
android应用实现重启系统+签名

1.在AndroidManifest.xml文件的manifest标签中加入一条android:sharedUserId="android.uid.system" <manifest xmlns:android="http://schemas.android.com/apk/res/android" <uses-permissi......

blackylin
2012/08/09
0
18
android签名机制(1)——了解签名

android中所有运行在设备上的应用都必须要签名,这是系统提供的一种安全认证机制。 下面以问答形式来自我认识下,后面在根据部分内容来进一步研究: 1.为什么用签名机制?如果不签名呢?为了...

blackylin
2013/11/16
0
0
Android应用程序签名(官方文档中文版)(上)

概览 Android要求所有已安装的应用程序都使用数字证书做数字签名, 数字证书的私钥由应用开发者持有. Android使用证书作为标识应用程序作者的一种方式, 并在应用程序之间建立信任关系. 证书并...

刘敏smile
2013/10/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

java 重写排序规则,用于代码层级排序

1.dataList 是个List<Map<String,Object>> 类型的数据,所以比较的时候是冲map中获取数据,并且数据不能为空。 2.dataList 类型是由自己定义的,new Comparator<Map<String,Object>> 也是对应......

轻量级赤影
9分钟前
0
0
分布式大型互联网企业架构!

摘要: 开发工具 1.Eclipse IDE:采用Maven项目管理,模块化。 2.代码生成:通过界面方式简单配置,自动生成相应代码,目前包括三种生成方式(增删改查):单表、一对多、树结构。生成后的代码...

明理萝
9分钟前
0
1
对MFC程序的一点逆向分析:定位按钮响应函数的办法

因为消息响应函数保存在AFX_MSGMAP_ENTRY数组中, 观察nMessage、nCode、nID、pfn利用IDA在rdata段中搜索即可, 在IDA中找到代码段基址0x401000,函数地址0x403140, 在WinDbg中运行!addre...

oready
10分钟前
0
0
阻抗匹配与史密斯(Smith)圆图基本原理

参考:http://bbs.eeworld.com.cn/thread-650695-1-1.html

whoisliang
15分钟前
0
0
maven配置文件分离

一、 简介 遇到很多次别人处理的项目,测试环境,本地开发和线上环境的配置不一样,每一次部署都要重新修改配置文件,提交审核代码,才能打包,非常不方便。 其实相信很多人都知道可以使用m...

trayvon
15分钟前
0
0
MacOS和Linux内核的区别

导读 有些人可能认为MacOS和Linux内核有相似之处,因为它们可以处理类似的命令和类似的软件。甚至有人认为苹果的MacOS是基于linux的。事实上,这两个内核的历史和特性是非常不同的。今天,我...

问题终结者
31分钟前
1
0
SpringBoot | 第八章:统一异常、数据校验处理

前言 在web应用中,请求处理时,出现异常是非常常见的。所以当应用出现各类异常时,进行异常的捕获或者二次处理(比如sql异常正常是不能外抛)是非常必要的,比如在开发对外api服务时,约定了响...

oKong
39分钟前
2
0
mysql高级

一、存储引擎 InnoDB MyISAM 比较 二、数据类型 整型 浮点数 字符串 时间和日期 三、索引 索引分类 索引的优点 索引优化 B-Tree 和 B+Tree 原理 四、查询性能优化 五、切分 垂直切分 水平切分...

丁典
今天
1
0
rsync通过同步服务、系统日志、screen工具

rsync通过后台服务同步 在远程主机中建立一个rsync服务器,在服务器上配置好rsync的各种应用,然后将本机作为rsync的一个客户端连接远程的rsync服务器。 首先在A机器上建立并且配置rsync的配...

黄昏残影
今天
5
0
Spring Cloud Gateway 接口文档聚合实现

在微服务架构下,通常每个微服务都会使用Swagger来管理我们的接口文档,当微服务越来越多,接口查找管理无形中要浪费我们不少时间,毕竟懒是程序员的美德。 由于swagger2暂时不支持webflux 走...

冷冷gg
今天
150
2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部