2016-06-28 103 views
4

在Android-Studio中创建新的Java Keystore非常简单。但是我想添加第二个别名到这个Keystore。对于同一个客户端的第二个应用程序。我怎么做?或者,如果这不是一个好主意,那么更好的方法是什么?如何向Android(Java)Keystore添加别名

编辑:我不打算在同一个项目中使用不同的Keystore。第一个项目在Android Studio中完成,第二个在Intel XDK中完成。他们不会共享进程或需要访问其他数据。

回答

7

你也可以做到这一点在Android Studio中,只要进入“建设>生成签名APK”,跳到下一步,单击“3点灰色按钮”,在“密钥别名”字段的右侧,然后只需键入您的其他应用一个新的别名和密码。

1

据谷歌的建议,它说

签名Considarations:

你应该签署所有的APK使用同一证书的整个 您的应用程序的预期寿命。有几个原因,你 应该这样做

应用升级:当系统安装更新到一个应用程序,它在新版本中与那些在 现有版本的证书(或多个)进行比较。如果证书 匹配,系统允许更新。如果您使用不同的证书签署新版本,则 必须为应用分配不同的软件包名称,在这种情况下,用户 会将新版本安装为全新的应用。

应用模块化:机器人允许由相同的证书签名的APK在同一进程中运行,如果该应用程序,以便请求,以便 将它们视为单一的应用程序的系统。通过这种方式,您可以在 模块中部署您的应用程序,并且用户可以独立更新每个模块。

代码/通过权限数据共享:Android提供了基于签名的权限执行,这样应用程序可以暴露 功能到与指定 证书签名的另一个应用程序。通过使用基于签名的权限检查对具有相同证书和 的多个APK进行签名,您的应用程序可以以安全的方式共享代码和 数据。

检查https://developer.android.com/studio/publish/app-signing.html#strategies

阅读答案understant更多keystore, certificates and alias

1

正式文件说

一般来说,对于所有的开发人员推荐的策略是与签署所有应用程序相同的证书,在您的应用程序的预期使用期限内。有几个原因,你应该这样做......

https://developer.android.com/studio/publish/app-signing.html#considerations

您可以使用相同的证书。对于所有应用,也为使之简单,你可以使用相同的别名为所有的应用程序

+0

虽然他们说你应该签署使用同一证书的所有应用程序,它把一些限制通过的原因。就像让应用程序彼此通信或在应用程序之间共享数据一样。例如,如果您有一套应用程序(文档,表格等),那么他们应共享数据并使用相同的证书进行签名。 不好的一面是,如果你犯了一个病毒程序,并要卖掉它,你需要提供证书也是如此。这意味着如果您分享,买方将拥有其他应用的证书。我个人亲自签署不相关的应用程序。 –