最近,我正在使用Android Maps V2。我碰到debug.keystore
和release.keystore
。它们之间有什么区别?为什么我们必须同时使用两者?
Android构建过程会根据您用于构建应用程序的构建模式对应用程序进行不同的签名。
有两种构建模式:调试模式和发布模式。
在开发和测试应用程序时,可以使用调试模式。
当您要构建应用程序的发行版本时,可以使用发行模式,该发行版本可以直接分发给用户或在Google Play等应用程序市场上发布。
在调试模式下构建时,Android SDK生成工具使用Keytool实用程序(包含在JDK中)创建调试密钥。因为SDK生成工具创建了调试密钥,所以他们知道调试密钥的别名和密码。每次在调试模式下编译应用程序时,构建工具都会使用调试密钥以及Jarsigner实用程序(也包含在JDK中)对应用程序的.apk文件进行签名。因为别名和密码是SDK生成工具已知的,所以这些工具不需要在每次编译时都提示您输入调试密钥的别名和密码。
在发布模式下构建时,可以使用自己的私钥对应用程序进行签名。如果没有私钥,则可以使用Keytool实用程序为您创建一个。在发布模式下编译应用程序时,构建工具会使用私钥和Jarsigner实用程序对应用程序的.apk文件进行签名。由于您使用的证书和私钥是您自己的,因此您必须提供密钥库和密钥别名的密码。
当您使用带有ADT插件的Eclipse运行或调试应用程序时,调试签名过程会自动发生。当您将Ant构建脚本与debug选项一起使用时,调试签名也会自动发生。您可以通过使用Eclipse导出向导或修改Ant构建脚本并使用release选项进行构建来自动执行发布签名过程。
编辑
要使用android studio签名android应用,请参见此处
http://developer.android.com/tools/publishing/app-signing.html#releasemode
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句