您现在的位置是: 首页 > 好词好句 好词好句

apk签名工具安卓版怎么用_apk签名工具安卓版

tamoadmin 2024-08-14 人已围观

简介1.apk签名工具2.将原安卓apk反编译后签名,有原签名文件3.Android studio怎么生成签名apk4.APK重新签名或者更换APK签名版本必须用安卓专门的签名才行,目前常用的是使用SDK开发临时签名。网上找个APK签名的工具,将apktool重新打包后的APK进行签名就可以安装了。另外反编译的QQ可能开启,表现为闪退,QQ程序里有些代码,程序有异常会中止自己进程apk签名工具 在 A

1.apk签名工具

2.将原安卓apk反编译后签名,有原签名文件

3.Android studio怎么生成签名apk

4.APK重新签名或者更换APK签名版本

apk签名工具安卓版怎么用_apk签名工具安卓版

必须用安卓专门的签名才行,目前常用的是使用SDK开发临时签名。

网上找个APK签名的工具,将apktool重新打包后的APK进行签名就可以安装了。

另外反编译的QQ可能开启,表现为闪退,QQ程序里有些代码,程序有异常会中止自己进程

apk签名工具

在 Android 7.0 Nougat 中引入了全新的 APK Signature Scheme v2签名方式,美团也推出相应的 Android渠道包生成工具Walle 。

360加固后需要重新签名,借助360官方提供的 签名工具qihoo apk signer ,是用的7.0以前的v1签名,这时再通过walle打渠道包,是无法成功往apk写入渠道号的。这时我们就必须借助 Android SDK提供的apksigner 工具对已经打包好的apk进行v2签名。

Android官方文档已经对 apksigner的使用 有比较详细的解释。下面说说实际的操作步骤:

zip对齐,因为APK包的本质是一个zip压缩文档,经过边界对齐方式优化能使包内未压缩的数据有序的排列,从而减少应用程序运行时的内存消耗 ,通过空间换时间的方式提高执行效率(zipalign后的apk包体积增大了100KB左右)。

打开cmd,把目录切换到SDK的build-tools目录下(例如 E:\SDK\build-tools\25.0.2\ ),执行:

zipalign命令选项不多:

-f : 输出文件覆盖源文件

-v : 详细的输出log

-p : outfile.zip should use the same page alignment for all shared object files within infile.zip

-c : 检查当前APK是否已经执行过Align优化。

另外上面的数字4是代表按照4字节(32位)边界对齐。

这个工具位于SDK目录的build-tools目录下。必须说明的是,v2签名方式时在Android7.0后才推出的,所以只有 版本>25 的SDK\build-tools\中才能找到apksigner.jar。

打开cmd,把目录切到SDK\build-tools\版本号\lib下(例如 E:\SDK\build-tools\25.0.2\lib ),执行:

示例:

apksigner还支持另外的一些选项, 详情点击这里 。包括指定min-sdk版本、max-sdk版本、输出详细信息、检查apk是否已经签名等等。

例如检查apk是否已经签名:

zipalign + apksigner,两步走完成对apk包的v2签名。且以上工具位于AndroidSDK目录的build-tools中。

将原安卓apk反编译后签名,有原签名文件

对apk进行反编译并修改后,需要对重新打包的apk进行签名。

秘钥生成工具——keytool

路径:jdk/bin/keytool.exe

生成秘钥: keytool -genkeypair -keystore test.keystore -alias test -validity 10 -keyalg RSA

其中-validity指定有效期天数,-keyalg指定算法

查看秘钥信息: keytool -list -v -keystore test.keystore

JDK签名工具——jarsigner

仅支持V1签名

路径:jdk/bin/jarsigner.exe

命令: jarsigner -keystore test.keystore test.apk testkey

apk签名工具——apksigner

默认开启V1和V2签名

路径:AndroidSDK/build-tools/28.0.0/apksigner.bat

命令: apksigner sign --ks xx.keystore --ks-key-alias testkey test.apk

Android studio怎么生成签名apk

一、可以使用如APKTool之类的反编译工具,使用方法网上有介绍,反编译完成后修改所有引用包名的地方及对应的文件夹,然后重新编译为新的APK,最后再用签名工具签名就行。

二、第一步是用命令行的形式进行的,如果不愿意进行繁琐的配置过程,可以使用一些可视化的APK修改工作,如APK改之理、VTS(Virtuous Ten Stdio)等,但主要修改的地方更第一步是一致的。

APK重新签名或者更换APK签名版本

1、生成你自己的jks文件

如果没有的就新建,点击Create New ... ?设置密码(123456)

然后Next -- Finish

2、使用keytool-importkeypair对jks文件引入系统签名

把platform.x509.pem、platform.pk8和上一部生成的jks文件统一放到一个文件夹下,比如我的是放在工程目录的signAPK目录下

将下载好的keytool-importkeypair配置一下,其实主要就是配置一下环境变量,不熟悉的可以阅读官方文档,然后使用下面这条命令(需要在linux下,用windows的可以去在linux下生成jks,然后复制出新的jks回原目录也可以)对jks文件引入系统签名

./keytool-importkeypair -k [jks文件名] -p [jks的密码] -pk8 platform.pk8 -cert platform.x509.pem -alias [jks的别名]

例如我的对应的就是:./keytool-importkeypair -k SignDemo.jks -p 123456 -pk8 platform.pk8 -cert platform.x509.pem -alias SignDemo

运行完这条命令之后,我们就得到了有系统签名的jks

3、配置gradle()

在在android区域下(与defaultConfig同级)添加signingConfigs配置:

依次填写jks的路径,密码,别名等

详情介绍

在某些特殊情况下,需要对已经生成的apk进行重新签名,或者对已经生成的apk更换签名版本(v1/v2/v3/v4)。如何实现呢? 可以通过命令行对已生成的apk进行处理。

apksigner.jar通常包含在Android SDK中可。路径一般是在Android SDK/build-tools/ {SDK版本} /lib/apksigner.jar

不同的SDK版本中均有一个,取最新版本的就好了。

使用压缩软件打开apk,删除包内 /META-INF/ 文件夹及文件夹内所有文件,并重新压缩文件。

准备好签名证书及相关密码和需要刚处理过得apk文件

示例:

执行命令

接着输入证书保护密码及别名密码。

可以从此命令的输出中看出当前生成的apk签名情况。

可以通过如下命令行参数进行控制

--v1-signing-enabled true

--v2-signing-enabled true

--v3-signing-enabled false

使用的签名版本还跟apk编译时使用的最低SDK版本有关, 即min-sdk-version的值。如果设置的值大于等于26,即使添加--v1-signing-enabled true 也无法通过上述步骤签V1版本的签名--仅有V2签名(Android Studio也是)。

可以对最后生成的apk通过执行如下命令尝试: