Android 对apk进行重签名和查看签名(window 和mac)及生成签名

Flutter给APK签名—两种方式(android 安装包) 给未签名的apk签名,可以先检查下apk有没有签名。方式一:手动签名,二、配置自动签名 阅读详情

生成签名文件:其实是有很多工具可以做到,这里不过是想用命令来生成
其命令如下:生成的签名默认在c盘根目录下
keytool -genkey -alias aaaa.keystore -keyalg RSA -validity 2000 -keystore newandroid.keystore
备注说明:-alias后面跟着的是别名(android.keystore) -keystore后面跟着的是具体的签名文件(及签名文件的命名–newandroid.keystore)
当使用这个命令生成后,会有个警告,不符合pkcs12标准,需要消除掉(也可以不消除),使用如下命名:
keytool -importkeystore -srckeystore android.keystore -destkeystore newandroid.keystore -deststoretype pkcs12
将上面的android.keystore签名迁移到newandroid.keystore中,其各种参数不变。
截图如下
这里写图片描述

标题实际上说了二个问题:查看签名和重签名
首先说:如果对方给了你.keystore之类的文件格式的签名文件后,实际上时可以查看相关的签名的信息的,只需要在cmd控制台运行如下命令即可:
直接运行keytool命令时不可行的 需要配置环境,将keytool.exe所在的目录配置到环境变量中
可以直接下jdk安装配置,也可以用as自带的目录:\jre\bin
命令:keytool -list -v -keystore xxxx.keystore 即可得到如下示意图信息:
这里写图片描述
非解包的情况下:查看签名
keytool -list -printcert -jarfile app-release-sign.apk

先说一个简单的查看apk的签名信息:
第一步:将apk解压
第二步:找到META-INF 下的.RSA文件
第三步:在mac终端或者window控制器上输入命令:
keytool -printcert -file xxx.RSA回车,即可查看签名文件.将.RSA文件拖入到-file后面,即可查看:如下图
这里写图片描述
其中:MD5的值就是签名的信息(已被隐藏)

去掉apk的签名就比较简单了:
反编译apk后 去掉original里面的META-INF文件夹即可 然后回编译出来即正常apk

重新签名就有点复制了:
首先我们必须拿到未签名的apk 和需要签名的keystore文件 以及别名和key password 和 key store password信息.
最简单的办法:使用360签名工具,但是只适用于window系统,其签名工具下载地址如下:
http://www.pc6.com/softview/SoftView_230893.html

但是mac只能使用命令进行签名
签名命令如图下:
使用jarsigner进行签名
jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]
或者直接把密码给带进签名里面去,就不用手动输入密码库密码了:命令如下
jarsigner -verbose -keystore [您的私钥存放路径] -storepass 密码库密码 -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]
或者
jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称] -storepass 密码库密码

jarsigner的参数说明,以上的路径都是我自己电脑里面的路径

您的私钥的存放路径,指的是 keystore文件 即路径为/Users/liangzijishu/Desktop/keys/okGame.jks
签名后文件存放路径,指点是签名后 产生的新的apk文件 即存放路径为/Users/liangzijshu/Desktop/abc.apk(并重新命名了)
[未签名的文件路径] 指定要签名apk文件的绝对路径,也就是别人给你的未签名的apk文件 /Users/liangzijishu/Desktop/天涯明月刀.apk
[您的证书名称] 是指您创建密钥时您设置的证书名称 即仓库的别名 即sihaoGame
密码库密码是指 仓库密码
命令如下图:
这里写图片描述

同时输入的密钥库密码短语:就是key store password(此时不会显示密码 直接输入 回车即可)

可能会报的错如下:
第一:jarsigner 错误: java.lang.RuntimeException: 密钥库加载: /Users/liangzijishu/okGame.jks(No such file or directory)

keystroe的拓展名 可以为.jks(或者是.store  未验证)  但是不能为.txt 否则会报错误 

第二种报错:
jarsigner: 找不到kaoyan_keystore的证书链
即:由于证书名称写错了,证书名称即Alias(你设置的别名)

第三种报错:
jarsigner 只能使用一种别名
即在签名的时候 即某个路径下面出现了空格 例如:C:\Users\Administrator\qyysnew new\dist
则qyysnew new中间出现了空格 实际上是一个目录

第四种报错: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed to collect certificates from /data/app/vmdl1272757617.tmp/base.apk: META-INF/CERT.SF indicates /data/app/vmdl1272757617.tmp/base.apk is signed using APK Signature Scheme v2, but no such signature was found. Signature stripped?]
签名后安装时出现此问题:是因为原来的apk带有v2签名,即首先需要去掉v2签名,然后再签名即可
以上信息:还要感谢我的好盆友及一位博主:
博主博客如下:
https://www.jianshu.com/p/dbcfff997ccb

手动对齐操作:
手动对齐apk:zipalign 4 unaligned.apk aligned.apk (或者zipalign -v 4 unaligned.apk aligned.apk)
验证是否对齐:zipalign -c -v 4 application.apk。

以上:非常感谢

安卓-apk系统签名篇 阅读详情

相关推荐

【APKtool】APKtool实现某瓣APP重签名

Java 开发的应用程序可以被打包成一个 JAR 文件,用户可以通过双击 JAR 文件来运行应用程序,前提是他们的系统上已经安装了 Java 运行时环境(JRE)。:可执行的 JAR 文件包含一个特定的清单文件,该文件指定了应用程序的入口点(main 方法所在的类),使得 JAR 可以作为独立的应用程序运行。:JAR 文件可以将 Java 类文件、相关的元数据和资源文件(如文本、图片和配置文件)封装在一个单一的文件中,便于传输和部署。:JAR 文件可以签名,以确保文件的完整性和来源安全。

weixin_63958646的博客 3273

APK打包和签名

APK(Android application package)需要将所有内容打包成为一个被Android系统所能识别的文件,才可以被运行,一个apk文件内包含被编译的代码文件(.dex 文件),文件资源(resources), 原生资源文件(assets),证书(certificates),和清单文件(manifest file)。优点是不再需要一个apk来包含所有类型的安卓设备的所有内容,开发者只需要根据需求上传更新,减少了应用程序安装包的大小体积。都是用来打包的,并保证应用的唯一性。

代码充电宝 5230

iOS应用安装与签名机制全解析:从IPA、证书到TestFlight的正规路径

从移动应用分发的基本概念说起,解释IPA包与安卓APK的本质差异,说明iOS系统通过证书、描述文件和UDID构建的信任链。理解签名机制的技术价值在于保证代码完整性与来源可信。针对开发者常见的真机调试、内测分发场景,梳理Xcode真机运行、TestFlight测试分发、Ad Hoc等正规流程,并剖析第三方签名工具背后的证书滥用与设备控制风险。最后给出安装失败的系统排查顺序与证书管理建议,帮助开发者与普通用户避开“永久签名”陷阱。

weixin_33957648的博客 384

Android apk签名原理

一、什么是apk签名 签名是摘要与非对称密钥加密相相结合的产物,摘要就像内容的一个指纹信息,一旦内容被篡改,摘要就会改变,签名是摘要的加密结果,摘要改变,签名也会失效。Android APK签名也是这个道理,如果APK签名跟内容对应不起来,Android系统就认为APK内容被篡改了,从而拒绝安装,以保证系统的安全性。 应用程序的作者使用自己的私钥签名APK文件,并将签名与公钥一起发布到APK中,这个过程称之为签名。当应用程序被安装时,用发布的公钥去解析签名,并与文件的hash进行比对,这个过程叫验签。 二、

分享Android开发知识 8350

Chrome侧边栏实现Android投屏与提单一体化

Android投屏是移动开发与测试中的基础能力,其核心原理是通过ADB协议建立设备与主机的通信通道,并借助WebRTC或MediaProjection等技术实现实时画面采集与传输。传统方案如QtScrcpy依赖本地ADB服务和独立窗口,存在安装复杂、上下文割裂、交互延迟高等工程痛点。而基于Chrome侧边栏的轻量级投屏方案,融合WebRTC低延迟流、Chrome内置ADB Bridge及扩展API沙箱机制,实现了免客户端、零感知接入、同屏操作与结构化提单的技术闭环。该方案显著降低认知负荷,适用于真机调试、B

weixin_33851429的博客 374

Codex手机端启动失败真相:反向长轮询与localhost代理劫持机制解析

SSE(Server-Sent Events)是一种基于HTTP的单向实时通信技术,常用于服务端向客户端推送状态更新;其核心依赖持久化HTTP连接与text/event-stream响应头。在混合架构应用中,为规避HTTPS握手开销、系统级网络策略及跨设备DNS限制,开发者常采用HTTP+localhost回环代理+反向端口映射的轻量方案。该模式虽牺牲TLS安全性,却显著提升连接建立速度与系统兼容性,广泛应用于桌面-移动协同类工具(如Codex)的远程控制通道。本文深入剖析其协议选型逻辑、iOS/Andro

weixin_30421809的博客 444

【转载】Android 对apk进行重签名和查看签名(window 和mac)及生成签名

本文转自 原文链接:https://blog.youkuaiyun.com/willba/article/details/79476904 只为记录下来担心找不到博主或者博主下架了此文章。 生成签名文件:其实是有很多工具可以做到,这里不过是想用命令来生成 其命令如下:生成的签名默认在c盘根目录下 keytool -genkey -alias aaaa.keystore -keyalg RSA -validi...

奶酪的博客 645

Android ROM解包打包工程化实践:从AVB签名到super分区

ROM解包与打包是Android固件开发的核心基础能力,其本质是遵循AOSP规范对sparse、br、ext4等二进制镜像格式的精准解析与重构。原理层面涉及AVB2.0签名验证、dynamic partition布局解析、Brotli/LZ4压缩解码及SELinux策略兼容性控制;技术价值在于实现可重复、可审计、零人工干预的定制ROM量产流程;典型应用场景包括旧机续命、ODM批量出货和LineageOS适配——尤其在Android 12+系统中,super分区与vbmeta签名链成为绕不开的硬性门槛。本文聚

weixin_34199405的博客 445

Android apk重新打包遇到的坑

背景 公司做好的apk,今天测出了问题。但是今天是周六,个人电脑上没代码,要自己想办法改apk的内容后重新打包了。好在这个apk没有加固,而且工程基本都是H5代码,可以直接改压缩文件后重新打包就可以了。 若干坑 使用windows电脑将后缀.apk改成.rar后直接使用winRAR打开,不解压缩成文件夹。然后保存。然后再把后缀改回去。安装,报错这个apk没有签名证书。 下载了apktool...

weixin_36001685的博客 5379

OpenRadar Matlab版:毫米波雷达信号处理全流程开源库详解

毫米波雷达数据解析与信号处理是感知领域的基础能力。本文介绍毫米波雷达从ADC原始采样到距离-多普勒(Range-Doppler)热图、CFAR检测、DOA估计直至点云与生命体征参数提取的完整处理链路,并深入讲解OpenRadar(Matlab版)开源库的内核设计、核心API与实测经验。从原理上看,距离FFT与多普勒FFT构成RD谱,CFAR自适应阈值实现目标检测,相位解缠与滤波用于呼吸心跳提取。技术价值在于将繁琐的雷达数据读取、矩阵变换和算法流程标准化,免去重复造轮子。可应用于人员存在感知、生命体征监护、4

weixin_33806859的博客 322

python k线顶分型_【缠论】分型、笔的定义及其程序化

K线包含关系处理和分型的定义如果一个K线的高低点全在另一K线的范围里,称之为包含关系。针对这种K线,需要进行一些处理,去除包含关系,处理方法:向上时,把两K线的高点当高点,而两K线低点中的较高者当成低点;反之,当向下时,把两K线的低点当低点,而两K线高点中的较低者当成高点,这样就把两K线合并成一新的K线。经过这样的处理,所有K线图都可以处理成没有包含关系的图形。两K线的包含关系,可以分成四种:1)...

weixin_39717152的博客 2824

Docker中运行安卓模拟器与Appium的完整实践方案

安卓模拟器与Appium是移动UI自动化测试的核心技术组合,其本质依赖ADB桥接、Android系统虚拟化及GPU加速等底层能力。在容器化环境中,传统AVD因无法直通/dev/kvm、缺少图形栈和权限隔离而频繁报错,如'x86_64 emulation requires hardware acceleration'。通过KVM设备直通、QEMU-KVM定制镜像与最小权限配置(CAP_SYS_ADMIN+seccomp=unconfined),可在Docker中构建稳定、可伸缩、合规的headless安卓测试

weixin_34239592的博客 757

AutoCAD 2025在Win10/Win11上的官方安装、配置与问题排查全指南

对于需要在 Windows 11 或 Windows 10 系统上部署 AutoCAD 2025 的设计师、工程师和 IT 支持人员来说,一个稳定、合规的安装流程是高效工作的基石。网络上充斥着各种所谓的“免费下载”和“一键安装”教程,但这些资源往往来源不明,可能捆绑恶意软件、导致软件崩溃,甚至引发严重的许可合规风险。本文旨在提供一个清晰、安全、基于官方最佳实践的 AutoCAD 2025 安装与配置指南,重点解决在 Windows 11 和 Windows 10 系统上部署时可能遇到的兼容性问题、安装失败以

weixin_34396103的博客 450

Unity项目构建全流程实战:从自动化到性能优化的工程实践

在游戏开发与软件工程领域,构建(Build)是将源代码、资源与依赖项转换为可部署应用程序的核心环节。其原理涉及编译、链接、资源打包与平台适配等多个技术阶段,旨在确保产出的稳定性和性能。构建流程的技术价值在于提升开发效率、保障交付质量并降低维护成本,是现代CI/CD(持续集成与持续部署)体系的关键组成部分。在Unity引擎的应用场景中,构建不仅是生成APK或Xcode工程的最后一步,更是一条连接开发与产品的自动化生产线,直接影响包体大小、运行时性能与多平台兼容性。本文聚焦Unity项目构建,深入探讨如何通过命

weixin_30564901的博客 367

从零构建HFSS连接器仿真模型:以SMP接口的精准复现为例

本文详细介绍了如何从零构建HFSS连接器仿真模型,以SMP接口的精准复现为例。通过获取官方模型、导入技巧、信号路径提取和介质结构复现等步骤,帮助工程师避免常见错误,提升高频电路仿真的准确性。文章特别强调了模型精度对仿真结果的影响,并提供了实用的调试和管理建议。

weixin_29041767的博客 429

手把手教你校准垂起固定翼(VTOL)遥控器与电调:从零到飞的完整流程

本文详细介绍了垂起固定翼(VTOL)遥控器与电调的校准流程,从基础认知到飞行前检查,涵盖遥控器通道配置、电调校准、舵机方向调整等关键步骤。通过图文并茂的指导,帮助无人机爱好者安全完成VTOL调试,确保首飞成功。特别强调多旋翼模式、过渡模式和固定翼模式的设置要点,适合新手和进阶用户参考。

jenkins8butler的博客 357

Appium自动化测试:从原理到实战的环境搭建与元素定位指南

自动化测试是现代软件工程中保障应用质量、提升迭代效率的核心实践。其基本原理是通过脚本模拟用户操作,替代重复性手动测试,实现快速、精准的回归验证。在移动应用领域,跨平台测试框架Appium基于WebDriver协议,将测试指令‘翻译’成iOS和Android原生测试框架(如UiAutomator2和XCUITest)能理解的指令,从而实现了‘一次编写,到处运行’的技术价值。它广泛应用于移动应用的UI自动化测试、兼容性测试及持续集成流程。本文聚焦于Appium的实战入门,详细解析其客户端-服务器架构,并提供从N

weixin_34262482的博客 412

【TensorRT】TensorRT C# API 项目介绍:基于C#与TensorRT部署深度学习模型(上篇)

开发了TensorRT C# API 2.0版本,该版本在开发时充分考虑了上一版本应用时出现的问题,并进行了改进。同时在本版本中,我们对接口进行了优化,使用起来更加简单,并同时提供了相关的应用案例,方便开发者进行使用。

grape_yan的博客 3038

APK 签名:v1 v2 v3 v4

通过对 Apk 进行签名,开发者可以证明对 Apk 的所有权和控制权,可用于安装和更新其应用。而在 Android 设备上的安装 Apk ,如果是一个没有被签名的 Apk,则会被拒绝安装。 在安装 Apk 的时候,软件包管理器也会验证 Apk 是否已经被正确签名,并且通过签名证书和数据摘要验证是否合法没有被篡改。只有确认安全无篡改的情况下,才允许安装在设备上。 简单来说,APK 的签名主要作用有两个: 证明 APK 的所有者。 允许 Android 市场和设备校验 APK 的正确性。

weixin_46569059的博客 1万+

Matlab R2024a硬件支持包安装避坑指南:以Arduino为例(附离线包下载)

本文详细介绍了Matlab R2024a硬件支持包(Support Package)的安装流程,特别是针对Arduino平台的避坑指南和高效部署方法。从环境准备、离线安装方案到Arduino支持包的专项优化,提供了全面的技术细节和解决方案,帮助开发者避免常见错误,实现快速部署。

weixin_33737134的博客 448

【音视频】PJSIP库——示例简介、C++类说明

aectest音频回声消除测试工具,用于演示音频处理模块中的回声消除(AEC)功能,通常用于 VoIP 场景中优化语音质量。auddemo音频播放 / 录制演示,展示如何使用 PJProject 的音频接口进行基本的音频数据采集、播放和处理,例如波形显示或格式转换。stereotest立体声处理测试,可能用于演示多声道音频的处理方式,如混音、声道分离等。tonegen音频信号生成工具,用于生成测试用的音频信号(如正弦波、音调等),常用于音频设备测试或调试。recfile。

郭老二 434

apk自动签名和查看签名

一、自动签名1.创建jks签名文件,如果已经创建,则跳过此步骤Build->Generate Signed Bundle or APK,选择APK,然后Next,然后选择Create new2.在app/build.gradle中,在android{…}中添加以下内容release {storeFile file('android.jks') // 对应keystroe的路径storePassword 'android' // 对应keystroe的密码。

savet的博客 3110

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Android的APK两种签名

前几天在研究APK瘦身的相关知识,发现有个很有意思的知识点就是apk的签名 – APK Signature Scheme v2,虽然出来了一段时间,但是这方便真是没做太多的关注,趁着十一刚过的热乎劲撸起袖子干一波。

2201_75735270的博客 2224

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Android打包知识体系(二)——APK签名介绍

上一节介绍到多渠道打包的快速,他是如何如此迅速的完成打包的? 问题1:如何不修改签名的情况下,网APK中注入渠道信息??? 先不急接着往下看。 一.APK签名介绍: 1.APK 签名方案 ...

indeedes的博客 6870

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

安卓apk文件签名

链接: https://pan.baidu.com/s/1D3WxIL5M5ewyFNTqJzARPw 提取码: pd6w上篇博文编译的apk文件。

小石潭记丶 1212

APK重新签名或者更改签名详细步骤

【代码】APK重新签名或者更改签名详细步骤。

无敌暗黑暴龙神的博客 1万+
上一篇: 数据存储之数据库操作
下一篇: android 安装apk对不同版本的要求
掉头发程序员
博客等级 码龄10年 40粉丝 138原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值