`
h416756139
  • 浏览: 365888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android 使用命令行方式进行签名发布应用

阅读更多

使用命令行方式进行签名需要JDK中的两个命令行工具:keytool.exe和jarsigner.exe。可按如下两步对apk文件进行签名:

(1)使用keytool生成专用密钥(Private Key)文件。

(2)使用jarsigner根据keytool生成的专用密钥对apk文件进行签名。

生成专用密钥的命令如下:

  1. keytool -genkey -v -keystore androidguy-release.keystore -alias androidguy -keyalg RSA -validity 30000 

其中androidguy-release.keystore表示要生成的密钥文件名,可以是任意合法的文件名。androidguy表示密钥的别名,后面对apk文件签名时需要用到。RSA表示密钥算法。30000表示签名的有效天数。

在执行上面的命令后,需要输入一系列的信息。这些信息可以任意输入,但一般需要输入一些有意义的信息。

 

在输入完信息后,在当前目录下会生成一个androidguy-release.keystore文件。这个文件就是专用密钥文件。

下面使用jarsigner命令对apk文件进行签名。首先找到本章实现的例子生成的apk文件。该文件在ch02_showdatetime\bin目录中,在Windows控制台进入该目录,并将刚才生成的androidguy-release.keystore文件复制到该目录中,最后执行如下命令:

  1. jarsigner -verbose -keystore androidguy-release.keystore ch02_showdatetime.apk androidguy 

其中androidguy表示使用keytool命令指定的专用密钥文件的别名,必须指定。在执行上面的命令后,需要输入使用keytool命令设置的keystore密码和<androidguy>的主密码。如果这两个密码相同,在输入第2个密码时只需按回车键即可(要注意的是,输入的密码是不回显的)。如果密码输入正确,jarsigner命令会成功对apk文件进行签名。签完名后,我们会发现ch02_showdatetime.apk文件的尺寸比未签名时大了一些。

 

分享到:
评论

相关推荐

    Android Apk命令行编译签名打包大全

    在Android开发过程中,掌握命令行编译、签名和打包APK的方法是十分必要的。下面将详细介绍这个过程: 1. **生成R.java文件** R.java文件是Android编译系统自动生成的,它包含了应用程序资源的ID。使用aapt工具可以...

    利用命令行pk8签名

    了解这些知识点后,开发者可以根据自己的需求选择合适的方式对APK进行签名,无论是使用Android Studio内置的签名功能,还是通过命令行工具,都能确保应用的安全发布。签名过程对于防止代码篡改、确保应用来源可信...

    android获取应用32位签名

    在Android开发中,应用签名是确保应用程序完整性和安全性的关键要素。每个APK在发布时都需要一个签名,以便系统能够验证其来源并确保其未经篡改。本文将深入探讨如何获取Android应用的32位签名,以及这个过程的重要...

    android获取应用32位签名.rar

    - 使用` jarsigner `命令行工具,这是Java标准工具,可以对APK进行签名。 - 在Android Studio中,可以通过Build菜单的Generate Signed Bundle / APK选项进行签名操作。 5. **代码参考**: 压缩包中的代码可能...

    Android应用签名获取工具

    Android应用签名是指通过一个私钥对APK文件进行数字签名的过程,这个过程验证了应用的来源,并且确保了应用在分发和安装时没有被篡改。下面将详细解释Android应用签名的重要性和获取方法,以及与提供的"Android应用...

    Android签名生成工具和签名格式转换工具

    Android系统要求每个发布到Google Play商店的应用都需要经过签名,以便验证应用的来源和确保其在安装和更新过程中的完整性。本文将深入探讨Android签名生成工具以及签名格式转换工具的相关知识。 一、Android签名的...

    Windows版本 Android Apk签名工具

    2. 使用不同的签名:为不同的应用使用不同的签名,以便用户能够区分来自不同开发者的应用。 3. 签名版本:调试版和发布版应该使用不同的签名,以避免混淆。 总之,Windows版本的Android Apk签名工具是开发者发布...

    android应用签名工具

    本文将详细讲解如何在Ubuntu 11.10(64位)虚拟Linux系统中进行Android应用的签名过程,以及如何使用“应用签名工具”。 首先,我们需要理解Android应用签名的重要性。每个Android应用在发布到Google Play或其他...

    用于对Android升级包和APK进行签名

    在Android平台上,应用的发布和更新都需要经过一个关键步骤——签名。这个过程是确保应用程序的完整性和来源可信性的重要机制。本指南将深入探讨如何使用提供的`sign64.exe`和`sign32.exe`工具对Android升级包(APK...

    android10 apk签名文件

    4.3 多重签名:某些情况下,开发者可能需要为同一个应用使用多个签名,例如为了兼容不同平台或实现不同的权限需求。 4.4 适配Android版本:了解并遵循每个Android版本对签名的要求,确保应用能在各个版本上正常运行...

    Android 签名混淆打包文档

    - **处理第三方库**:如果应用使用了第三方库,可以使用`-libraryjars`命令来指定这些库的位置,例如`-libraryjarsE:/android/meet_dev/vrmeet/vrmeet/libs/armeabi-v7a/libtwOneAndroid.so`。 #### 六、总结 通过...

    mac android app 签名工具

    这个工具包主要用于对APK进行二次签名打包,以确保应用程序能够正确地在Android设备上运行,并且可以上传到Google Play商店或其他第三方应用市场。 首先,我们需要理解什么是Android应用签名。在Android系统中,每...

    android 系统签名工具

    本篇文章将详细解析“Android系统签名工具”的使用,以及如何通过CMD(命令行)进行签名操作。 一、Android签名机制 Android系统的签名机制是为了保证应用的完整性和防止篡改。每个APK文件在打包后都会包含一个...

    Android系统签名APK

    "Android系统签名APK"是指使用特定的系统证书对APK进行签名,这样可以让应用获得系统的权限,执行一些常规应用无法触及的功能。 APK签名的过程主要包括以下几个步骤: 1. **生成密钥对**:首先,开发者需要使用...

    Android中应用程序获得系统签名权限(platform.x509.pem platform.pk8 signapk.jar)

    这个命令会使用指定的证书对`your_app.apk`进行签名,并生成新的签名应用`signed_app.apk`。 4. 最后,将签名后的`signed_app.apk`安装到设备上。由于它现在携带了系统签名,所以系统会给予相应的权限。 需要注意的...

    命令行创建Android项目

    接着,你需要下载并安装Android SDK,这是一个包含了开发、调试和发布Android应用所需工具的套件。你可以从Android开发者官网获取SDK:http://developer.android.com/sdk/index.html。对于Windows用户,下载适用于你...

    Android数字签名

    此外,开发者还可以通过Android Development Toolkit(ADT)的Export Wizard图形界面进行签名流程,这通常在Eclipse集成开发环境中操作,方便没有命令行经验的开发者使用。 总结来说,Android数字签名是保障应用...

    应用签名、包名

    通常,开发者会使用ADB(Android Debug Bridge)命令行工具配合"dumpsys package"命令来查看应用的签名信息。对于普通用户,他们可能需要下载第三方应用,如"Package Disabler Pro"等,这些工具提供了友好的界面来...

    Android应用源码 打包签名 从生成keystore到完成签名.zip

    在Android应用开发中,发布应用到Google Play Store或者进行分发时,必须对APK进行签名。这个过程包括生成密钥库(keystore)、创建签名以及最终打包。本压缩包文件提供了一次完整的Android应用签名流程,对于开发者...

Global site tag (gtag.js) - Google Analytics