apk简介  

  APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的简称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别。

正文

apk文件 本质上 就是一个zip格式的文件,所以apk文件解压缩时采用unzip命令,将解压后的文件重新打包,需要采用zip命令,然后用命令行工具进行打包即可

本文将采用两种格式的打包命令,

第一种

cmd.exe /c  jarsigner -keystore C:\Users\Administrator\android.keystore -storepass chujian -signedjar C:\Users\Administrator\mwmz2.apk C:\Users\Administrator\mwmz.apk  android.keystore

1. 电脑上安装了jdk 并配置好环境变量。

2.android.keystore 文件文证书文件 生成证书命令 。如下

keytool -genkey -alias android.keystore -keyalg RSA -validity  -keystore android.keystore

3.mwmz2.apk 是签名后 要生成的文件名。

4.mwmz.apk 是要对其进行签名的文件。

5.命令最后的android.keystore 与2中生成的android.keystore一样,只不过没有路径只有 文件名及后缀。

第二种

java -jar E:\signapk.jar E:\testkey.x509.pem E:\testkey.pk8 E:\魔王萌者免密码2.apk E:\魔王萌者免密码.apk

1.电脑上必须安装了 jdk

2.需要在android环境下  生成签名证书

signapk.jar  testkey.x509.pem  testkey.pk8

3.E:\魔王萌者免密码2.apk   是签名后要生成的路径 及 文件名

4.E:\魔王萌者免密码.apk  是要对其进行签名的apk包

转载请注明出处  http://guanhp2013.cnblogs.com/

上面个两种方法 均能对 zip格式的包 进行重新签名。

作者网站:https://xyzla.com/

用java命令重新签名apk的更多相关文章

  1. android 命令行签名apk文件

    签名apk 1.将apk格式改为zip格式包,然后删除原来apk里面的META-INF文件夹,之后改回apk文件格式 2.cmd命令行: jarsigner -verbose -keystore C: ...

  2. Android开发中Ant命令编译和APK签名的一些心得

    本文章麦子学院跟小伙伴们详细的分享一下关于Android Ant命令行编译和APK签名详解一些实现方法,这是一个朋友在自己做安卓开发时写的,希望对大家会有所帮助呀. 最近在做Android开发时,需要 ...

  3. Android apk签名详解——AS签名、获取签名信息、系统签名、命令行签名

    Apk签名,每一个Android开发者都不陌生.它就是对我们的apk加了一个校验参数,防止apk被掉包.一开始做Android开发,就接触到了apk签名:后来在微信开放平台.高德地图等平台注册时,需要 ...

  4. 记录手动签名APK的过程

    记录手动签名APK的过程 前两天更新了华为平台上的APK,被驳回,原因是新APK签名和老的APK不一致,老用户安装会失败,用命令行安装会报如下的错误: harlanc@harlancdeMacBook ...

  5. 学习 java命令

    依稀记得自己第一次编译*.java文件,第一次运行*.class文件.但是六七年过去了,现在运行java写的程序更多的是用tomcat这种web容器.最近有个小需求,写一个监控zookeeper集群的 ...

  6. JAVA命令大全

    1.java.exe:======================运行java程序,这个相信每一位用Java的人知道了. 2.javac.exe:======================编译的Ja ...

  7. Java命令学习系列(7):Javap(转)

    原文出处: Hollis(@Hollis_Chuang) javap是jdk自带的一个工具,可以对代码反编译,也可以查看java编译器生成的字节码. 一般情况下,很少有人使用javap对class文件 ...

  8. Cordova之打包签名apk

    首先是关于apk签名,Android程序的安装是以包名(package name)进行区分的,就是同样的包名会被认作是同一个程序.这样就可以进行升级.替换.但是包名是一个可以被查看的字符串,这样就可能 ...

  9. java命令的本质逻辑揭秘

    前言 在日常编码中,有了ide的支持,我们已经很少直接在命令行中直接执行java XXX命令去启动一个项目了.然而我们有没有想过,一个简单的java命令背后究竟做了些什么事情?让我们看下下面几个简单的 ...

随机推荐

  1. Windows Server 2016-启用默认Windows搜索服务

    当我们使用Windows Server 2016尝试从开始菜单或基于Windows Server 2016的计算机上的Cortana 搜索时,我们不会收到任何结果或不一致的结果. 原因 默认情况下, ...

  2. libaio.so.1()(64bit) is needed by MySQL-server 问题解决办法

    [root@localhost upload]# rpm -ivh MySQL-server-5.5.25a-1.rhel5.x86_64.rpmerror: Failed dependencies: ...

  3. 又双叒叕换,微软这次换Edge了

    http://tech.sina.com.cn/it/2018-12-06/doc-ihmutuec6481129.shtml 其实两个月前跟一个微软的前同事聊天已经听说过微软要基于Chromiun来 ...

  4. Packets larger than max_allowed_packet are not allowed(mysql数据查询提示:不允许超过允许的最大数据包)解决方案

    问题背景: 首先我的项目运用的时Mysql,在做一个数据更新操作的时候,提示异常:System.Exception:“ExecuteNonQuery:Packets larger than max_a ...

  5. linux-Navicat 连接数据库 报错10060 & Navicat连接报错1146

    1.mysql数据库设置远程连接权限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;[回 ...

  6. SpringBoot基础系列一

    SpringBoot基础知识概览 特性 核心理念:约定优于配置 特点: 1. 开箱即用,根据项目依赖自动配置 2. 功能强大的服务体系,如嵌入式服务.安全 3. 绝无代码生成,不用写.xml配置,用注 ...

  7. 高效并发unsafe-星耀

    定义 Unsafe类是在sun.misc包下,不属于Java标准.但是很多Java的基础类库,包括一些被广泛使用的高性能开发库都是基于Unsafe类开发的,比如Netty.Cassandra.Hado ...

  8. Hadoop伪分布式集群搭建

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 1.下载Hadoop压缩包 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop- ...

  9. LindDotNetCore~Ocelot实现微服务网关

    回到目录 网关在硬件里有自己的定义,而在软件架构里也有自己的解释,它就是所有请求的入口,请求打到网关上,经过处理和加工,再返回给客户端,这个处理过程中当然就是网关的核心,也是Ocelot的核心,我们可 ...

  10. Spring入门(二):自动化装配bean

    Spring从两个角度来实现自动化装配: 组件扫描(component scanning):Spring会自动发现应用上下文中需要创建的bean. 自动装配(autowiring):Spring会自动 ...