如何重签名APK文件

如何重签名APK文件,第1张

给apk文件签名主要分三步,创建证书(如果没有)-->签名-->优化(可选)1)使用jdk的keytool工具生成签名用的证书> keytool -genkey -v -alias CERT -keyalg RSA -keysize 2048 -validity 10000 -keystore CERTkeystore 创建过程需要输入一些标识信息和密码,一些重要的参数值说明如下(根据自己的需要要进行相应的修改): CERTkeystore ---- 证书保存的文件名 CERT ---- 证书的别名 10000 ---- 10000天的有效期 2048 ---- 默认为1024 bits,Android 建议使用2048 bits或更高其他的详细信息可以使用keytool -help查看帮助 证书生成后使用如下命令可以查看证书的信息:> keytool -list -alias CERT -keystore CERTkeystore 2)使用jdk的jarsigner工具对apk文件签名> jarsigner -verbose -keystore CERTkeystore to_signapk CERT 签名过程需要输入证书的密码,一些重要的参数值说明如下(根据自己的需要要进行相应的修改): CERTkeystore ---- 证书保存的文件名 CERT ---- 证书的别名 待签名的apk文件根根目录下如果有文件夹“META-INFO”,请先删除(重新签名就需要这样做)。如果不想创建过程输出太多信息,可以删除“-verbose” 。上述签名会直接覆盖原来的文件,如果不想被覆盖而签名为另外的新文件 signedakp,只需将 to_signapk 改为 -signedjar to_signapk signedakp 即可。签名后可以使用如下命令验证是否签名成功: > jarsigner -verify to_signapk 如果需要查看更详细的验证信息,可修改为:> jarsigner -certs -verbose -verify to_signapk 3)使用android sdk的zipalign工具优化已签名的apk文件> zipalign -v 4 unalignedapk alignedapk 注意要在签名后再zipalign。这个工具不是jdk自带的,而是在%ANDROID_HOME%\tools\zipalignexe。参考资料:Signing Your Applications

DIY过后的apk需要重新前面,否则无法安装,需要把源版本的软件卸载掉才能装上,否则会提示安装签名冲突,签名方式分为两种:手机和电脑。
手机:下载手机签名工具,把进入软件后指定修改后的apk路径,再指定重新前面后保存在哪里的路径(可以是同一文件夹),签名后便可以安装。手机签名的apk包修改音频或其他一些东西会导致安装后无声音,若有此问题需要用电脑签名。
电脑:电脑下载apk签名工具进行签名即可。也可用apk改之理进行修改和签名。

android开发app签名过期了可以将app卸载,并重新安装最新版本。因为所有的Android应用程序都要求开发人员用一个证书进行数字签名,android不会安装没有进行签名的程序,签名有一个作用就是防止程序被篡改。

APP签名的其中另一个作用是应用程序升级。如果想要升级应用的版本,那么必须用同一个证书进行签名,这是由于只有以同一个证书签名,系统才会允许安装升级此应用程序。

如果用户使用了不同的证书进行签名,那么系统就会要求您的应用程序换名称,也就相当于安装一个新的应用程序。


扩展资料:

app签名在数据共享中的应用:

不同的应用程序之间,想共享数据,或者共享代码,那么要让它们运行在同一个进程中,而且要让它们用相同的证书签名。

以同一个证书对多个应用程序进行签名,利用基于签名的权限检查,就可以在应用程序间以安全的方式共享代码和数据了。

参考资料来源:百度百科—app开发

一:首先会用到几个软件,一个是dex解包、打包工具、Notepad++ Portable(dex文本编辑工具)、以及签名工具和JAVA运行环境安装,其他软件可以到这个地址下载:>

二:把需要去广告的软件,右键用7-zip解压方式打开,把classesdex拉出来。

内容拓展:

一、去广告步骤如下

1、去除广告下载源

解包classesdex(方法上面已讲过),用Notepad++ Portable搜索广告下载源地址(若不知道软件用的是哪个供应商的广告的话,最好两家的下载源都搜索下)

2、去除广告界面

① 将刚刚已经替换了classesdex文件的apk安装包用反编译。

② 用Notepad++ Portable搜索广告代码(上面已列出)

将搜索路径定位到res文件夹(就是反编译后的res文件夹),代码只搜索开头就行了,如:comadmobandroidadsAdView 和 comgoogleadsGoogleAdView。

当我们有需求对原apk更改签名时,可采用如下方式

有key的可跳到第2步,没有的在android studio中新建key

用rar等软件打开apk文件,然后删除“META-INF”文件夹即可。

其中 -keystore 后面是自己的key名称;
-storepass 和 -keypass 对应上面新建key的两个密码;
-signedjar 第一个参数是添加签名后的apk名称,后面是原apk名称;
key0 是上面新建key的Alias名称;
-tsa >

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13084326.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存