【问题标题】:How Do I Create A Certificate For My Android Market APK?如何为我的 Android Market APK 创建证书?
【发布时间】:2011-04-28 11:27:25
【问题描述】:

我想将我的第一个 APK/应用程序上传到 Android Market,但我收到了这个错误(顺便说一下,当我在 stackoverflow 中搜索时,我没有找到正确的链接)。

Market 不接受使用调试证书签名的 apk。创建一个有效期至少为 50 年的新证书。 市场要求用于签署 apk 的证书至少在 2033 年 10 月 22 日之前有效。创建一个新证书。

虽然事实证明this question 很相似,但那家伙只是说“哦,你让我想起了怎么做”而没有真正解释。我查看了“答案”中提到的网站,但这是我的问题:

  • 我不知道我的 keytool 工具在哪里。 Android site 很模糊;我在 ..\android-sdk-windows\tools 目录中没有看到任何类型的“keytool”。
  • 我想我以前做过,但我希望我有一组步骤,例如“打开命令提示符,导航到 keytool 所在的目录,输入命令 'xyz -flagsforxyz',然后从 Eclipse 中的“导出发布 apk”选项中指向密钥库”...或类似的东西。

我希望你能告诉我我已经尝试了一些东西!我可能只是忽略了一些简单的事情——所以是时候在 stackoverflow 中记录这些步骤了!谢谢你的帮助。

【问题讨论】:

    标签: android debugging certificate release google-play


    【解决方案1】:

    如果您使用 Eclipse 进行开发,只需右键单击您的项目并单击导出。现在选择 Android,然后选择导出 Android 应用程序。在下一步中确认要导出的项目。然后单击下一步,现在您应该可以选择创建新密钥库了。现在填写必填字段,您应该能够签署您的应用程序。请务必备份密钥库文件并记住您的密码。丢失此信息将无法更新您的应用程序。

    如果您使用终端创建密钥库并安装了 Java SDK,则 /usr/bin 中应该有一个名为 keytool 的程序(在基于 unix 的系统上)。在 Windows 上,SDK 还应该附带 keytool,但安装位置可能不同,如果 keytool 不在您的路径中,则在您的计算机上搜索 keytool.exe。使用此工具,您应该能够通过以下方式创建密钥:

    keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -validity 10000
    

    请记住,一旦您丢失了证书或证书过期,您将无法签署您的申请。确保到期日期是未来很长一段时间。

    【讨论】:

    • 谢谢,这完全按照描述完成了。第二段是信息性的,但甚至不是完成工作所必需的;很好的回复!
    • 如果您喜欢我的回答,您可以随时通过点击零上方的箭头来投票。这会给我一些声誉,奖励我的答案并向其他用户展示他们对我的答案的信任程度。
    • 我以前没有足够的声望。可能是因为你自己的回复,我现在这样做了。加油!
    【解决方案2】:

    是的,janusz 已经很好地解释了它,但我想在将应用程序推向市场之前告诉更多的步骤。 所以第一步是使用 jarsigner 对 App 进行签名

    jarsigner -verbose -keystore pkg_name apk_file_name key_name
    

    第二步是使用 zipalign 确保不会丢失任何空间。

    zipalign -v 4 apk_file_name zipped_apk_file_name(newfile)
    

    它一定会帮助你启动你的应用程序。

    【讨论】:

    • 非常感谢!你的回答对我帮助很大!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多