如何签署android apk文件
我正在尝试签署我的apk文件。 我无法弄清楚如何去做。 我找不到深入的方向。 我有很少的编程经验,所以任何帮助,将不胜感激。
手册非常清晰。 请详细说明在完成工作之后你会遇到什么问题,我建议:
https://developer.android.com/studio/publish/app-signing.html
好吧,一个没有参考或日食的小概览,所以留出一些空间来解决错误,但它的工作原理是这样的
另外,从链接:
用Eclipse ADT编译并签名
如果您将Eclipse与ADT插件一起使用,则可以使用“导出向导”来导出已签名的.apk文件(如果需要,甚至可以创建新的密钥存储库)。 导出向导为您执行与Keytool和Jarsigner的所有交互,这允许您使用GUI对包进行签名,而不是执行手动过程来编译,签名和对齐,如上所述。 一旦该向导编译并签名你的包,它也将执行与zip对齐的包对齐。 由于导出向导同时使用Keytool和Jarsigner,因此应确保它们可以在计算机上访问,如上面的“签名基本设置”中所述。
在Eclipse中创建一个签名和对齐的.apk文件:
打开Android文件夹,选择导出Android应用程序,然后单击下一步。
导出Android应用程序向导现在开始,它将引导您完成对应用程序进行签名的过程,包括选择签名.apk的私钥(或创建新的密钥库和私钥)的步骤。
以下是如何手动签署APK的指南。 它包含有关在build-tools 24.0.3
(10/2016)中引入的新apk-signer
信息,
自动化过程:
使用此工具(使用Google的新apksigner):
https://github.com/patrickfav/uber-apk-signer
免责声明:我是开发者:)
手动过程:
第1步:生成密钥库(仅一次)
您需要生成一次密钥库并使用它来签署unsigned
apk。 使用在%JAVA_HOME%/bin/
找到的JDK提供的keytool
,
keytool -genkey -v -keystore my.keystore -keyalg RSA -keysize 2048 -validity 10000 -alias app
步骤2或4:Zipalign
zipalign
这是在发现Android SDK中提供的工具如%ANDROID_HOME%/sdk/build-tools/24.0.2/
是一个强制性的optimzation一步,如果你要上传的APK Play商店。
zipalign -p 4 my.apk my-aligned.apk
注意:使用旧jarsigner
您需要在签名后进行zipalign。 当使用新的apksigner
方法时,您可以在签署之前进行这项操作(令人困惑,我知道)。 在apksigner工作正常之前调用zipalign,因为apksigner保留APK对齐和压缩(与jarsigner不同)。
您可以验证对齐方式
zipalign -c 4 my-aligned.apk
第3步:签名和验证
使用构建工具24.0.2及更高版本
像使用keytool一样,使用jarsigner
,它与%JAVA_HOME%/bin/
的JDK发行版一起使用,并像这样使用它:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my.keystore my-app.apk my_alias_name
并可以通过验证
jarsigner -verify -verbose my_application.apk
使用构建工具24.0.3和更新的版本
Android 7.0引入了APK签名方案v2,这是一种新的应用签名方案,可提供更快的应用安装时间,并可防止对APK文件进行未经授权的更改(请参阅此处和此处了解更多详细信息)。 因此,谷歌实施了自己的apk签名器,名为apksigner
(duh!)脚本文件可以在%ANDROID_HOME%/sdk/build-tools/24.0.3/
(.jar位于/lib
子文件夹中)。 像这样使用它
apksigner sign --ks my.keystore my-app.apk --ks-key-alias alias_name
并可以通过验证
apksigner verify my-app.apk
官方文档可以在这里找到。
对于IntelliJ IDEA或Android Studio的用户,请执行以下步骤:
*从菜单Build/Generate signed APK
*您需要创建密钥库路径。 在对话框中点击Create new
。 你将创建一个包含你的密钥的jks文件。 选择文件夹,定义密码。 所以你的密钥库确定。
*通过使用别名,密钥密码,姓名等为您的应用程序创建新密钥。
* 点击下一步。
*从对话框中选择Proguard或不。
您签名的APK文件已准备就绪。
帮助文件:https://www.jetbrains.com/idea/webhelp/generate-signed-apk-wizard.html
链接地址: http://www.djcxy.com/p/90691.html