Android Keystore的好位置?

Pet*_*son 42 android

有关Android密钥库"应该"的位置的指南吗?我已经准备好发布我的第一个应用程序了,在导出Android应用程序中,我正在创建一个新的密钥库,它要我指定位置.

FWIW我的Eclipse Workspace位于共享网络驱动器上,我从3个不同的开发系统中访问它.我这样做没有问题.为密钥库位置提供的默认位置似乎位于SDK目录树中,但这对我不起作用,因为每台PC都安装了自己的SDK副本.我需要它在一个可以从任何PC上看到我可能正在进行开发工作的位置,所以我认为这意味着网络驱动器或云中的一些虚拟位置.

是否有关于密钥库位置的指导,规则,限制或其他事项?

Dav*_*ood 31

只要它在某个安全的地方(即在源代码控制或其他方法中远程备份),这并不重要.如果你以某种方式丢失密钥库,那么你将无法再在Android市场上更新你的应用程序,并将被迫删除它并重新上传它作为使用新密钥签名的新应用程序.

如果您担心安全性,请记住密钥库中的密钥库和单个密钥都可以(并且应该)受密码保护.

我的密钥库位于我的android eclipse工作区的根目录中,它也是我用于版本控制的git存储库的根目录.看到你在多台机器上开发并且可能想要从其中任何一台机器上发布,我建议你做同样的事情.

  • 如果您的项目在Github上怎么办?将密钥库放在根文件夹中是安全的吗? (8认同)
  • 如果源代码是开放的,我不认为在项目的任何地方提交它是一个好主意(虽然它可以保持在那里不公正),因为**迟早有人可以解密/强制执行文件**及其密码.但是,如果您的代码未打开且未发布,则只要您的repo是私有且安全的,那么将keystore存储在根目录或`app`目录中是无害的. (4认同)

emm*_*mby 17

我希望github有一个内置工具来支持存储公共开源仓库的偶尔私有文件.这对于与源代码关联但不应公开查看的证书和密钥库很重要.

理想情况下,github会有某种密钥库回购,就像一个迷你私人回购.这样,您就可以将私人密钥库存放在私人仓库中,并且只与应该被允许管理您的Google Play和iTunes Connect帐户的帐户共享.

直到那天,我已经将我的密钥库文件存储在bitbucket上的免费私人仓库中,然后在我的github opensource仓库中添加了一个指向bitbucket仓库的链接.这样,它不会丢失,因为任何可以查看源代码的人都可以看到密钥库的位置,但它也不公开.

Github,如果你正在倾听,我认为支持一个非常受限制的,免费的私人仓库只是为了密钥库,对开源移动应用社区来说是一项很棒的服务.


小智 11

您希望保持密钥库的安全.如果有人获得它,你基本上将失去创作身份.

http://developer.android.com/guide/publishing/app-signing.html(页面底部)

  • "如果第三方在您不知情或未经许可的情况下设法取得您的密钥,那么该人可以签署并分发恶意替换您的真实应用程序或破坏它们的应用程序.此类人员还可以使用您的身份签署和分发攻击其他应用程序的应用程序或者系统本身,或者破坏或窃取用户数据." - 我认为这就是你所指的.(它不再位于页面底部.) (5认同)

Nic*_*k.D 6

我最近有同样的问题,并在网上寻找不同的意见。大多数人都说远程存储它,这是您想要做的事情,以防万一您的房子或工作场所被烧毁(您笑了,但有消防车是有原因的)。没有人真正说过将它远程存储在回购本身中的位置。

我决定做的是为 android 应用程序创建一个谷歌帐户(你应该有一个,因为你需要它通过 Playstore 发布)然后使用谷歌在谷歌驱动器上的免费 15GB 空间来存储我所有的密钥库和任何其他应用程序与我不想进行源代码管理有关,但我绝对不需要放松。也许这将在未来对你和其他人有用。