Ant*_*ton 44 android signing apk
如果我有一个apk可以删除当前的签名,有些如何使用不同的.keystore文件重新签名并仍然安装应用程序?
更新:我设法让它与Jorgesys的解决方案一起使用,之前我搞砸了,我解压缩.apk然后在删除META-INF文件夹并将文件扩展名更改回.apk后重新解压缩.我应该做的只是用winzip打开它并删除winzip里面的文件夹.
Jor*_*sys 71
试试这个
1)将.apk的扩展名更改为.zip
2)打开并删除文件夹META-INF
3)将扩展名更改为.apk
4)使用jarsigner和zipalign与您的新密钥库.
希望能帮助到你
Fat*_*tih 27
如果您正在寻找快速解决方案,您可以使用开源apk-resigner脚本或Google的apksigner工具
开源apk-resigner脚本https://github.com/onbiron/apk-resigner
您所要做的就是下载脚本并输入:
Run Code Online (Sandbox Code Playgroud)./signapk.sh application.apk keystore key-pass alias
apksigner命令行工具.Run Code Online (Sandbox Code Playgroud)apksigner sign --ks release.jks application.apk
您可以在开发人员Android站点上找到有关apksigner工具的更多信息.
https://developer.android.com/studio/command-line/apksigner.html
zip -d my_application.apk META-INF/\*
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk
Run Code Online (Sandbox Code Playgroud)
请注意,如果您使用v2签名架构(如果您在AS中使用build-tools 24.0.3+,则会自动执行),您不能仅从APK中删除META-INF文件夹,因为v2将其签名数据添加到zip元块.
然而,谷歌在构建工具24.03(Android 7)中引入的新apksigner能够重新签名 APK.您可以重复签名命令以使用新的密钥库/证书进行签名(旧的密钥库/证书将被删除).
apksigner sign --ks keystore.jks signed_app.apk
Run Code Online (Sandbox Code Playgroud)
无耻的插件:如果你想要一个更简单的工具,可以签署多个apks并有更好的日志输出使用:https://github.com/patrickfav/uber-apk-signer(在后台使用谷歌的apksigner.jar)
签署发布:$ 1.apk - > $ 1_release.apk"GeneralMills&GoogleApps#2012步骤1:删除任何以前的签名将.apk的扩展名更改为.zip打开并删除文件夹META-INF将扩展名更改为.apk或Command :•zip [originalapk]示例:•zip"$ 1".apk -d
步骤2:使用release.keystore进行签名..命令:•jarsigner -verbose -keystore [keystorefile] -signedjar [unalignedapk] [originalapk] alias_name示例:•C:\ Program Files\Java\jdk1.6.0_43\bin> jarsigner - verbose -keystore release.keystore -signedjar"$ 1"_unaligned.apk"$ 1".apk发布
步骤3:对齐命令:•zipalign -f 4 [unalignedapk] [releaseapk]示例:•C:\ Users\G535940\Downloads\adt-bundle-windows-x86\adt-bundle-windows-x86\sdk\too ls> zipalign -f 4"$ 1"_unaligned.apk"$ 1"_release.apk
第4步:清理命令:•rm 4 [unalignedapk]示例:•rm"$ 1"_unaligned.apk
其他命令可能会有所帮助:
使用keytool keytool -genkey -alias -keystore生成新密钥
列出键keytool -list -keystore
用于为Facebook功能生成keyhash的命令
命令:•keytool -exportcert -alias alias_name -keystore [keystorefile] | openssl sha1 -binary | openssl base64
示例:•C:\ Program Files\Java\jdk1.6.0_43\bin> keytool -exportcert -alias release -keyst ore release.keystore |打开l sha1 -binary | openssl base64
注意:要签署我们的apks,我们已将JDK从1.7降级到1.6.0_43更新.
原因:从JDK 7开始,默认签名算法已更改,要求您在签署APK时指定签名和摘要算法(-sigalg和-digestalg).
命令:jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore [keystorefile] [originalapk] alias_name
| 归档时间: |
|
| 查看次数: |
63862 次 |
| 最近记录: |