Android:为许多客户签名(MonoDroid)

时间:2011-08-17 18:16:17

标签: android xamarin.android keystore signing

我们有3个不同的客户,我们将为其构建Android应用程序。

使用Java SDK工具 keytool ,我们生成3个不同的密钥库文件。

我们是否使用相同的KeyStore文件为每家公司签署每个应用程序,或者每个应用程序是否都需要自己的密钥库?

请参阅:http://android.xamarin.com/Documentation/Guides/Preparing_Package_for_Android_Marketplace?highlight=market

3 个答案:

答案 0 :(得分:1)

密钥签名是为了识别开发人员而不是客户,the Android Market documentation建议这样做。如果需要使用单独的密钥,则可以使用一个具有多个签名的密钥库或每个密钥库一个密钥库。我建议你每个Android Market帐户都有一个密钥库文件。虽然您没有说这些应用是否在市场上发布。 Keytool将允许您导入和导出签名,为您提供一些灵活性。

答案 1 :(得分:1)

单个密钥库文件可以包含许多密钥。密钥库中的每个密钥都有一个别名(即名称),在使用该密钥签名时使用。您可以将每个应用程序的所有三个密钥放入一个密钥库中,而不会出现问题。

您可以为所有应用程序使用单个密钥,但如果该密钥被泄露,则需要更改影响所有应用程序的密钥。通常情况下,关键的妥协并不是一种风险,但如果你有承包商在每个应用程序上工作,它就会限制你让承包商逃脱钥匙或类似的东西。

答案 2 :(得分:0)

密钥是对您的应用程序进行数字签名...因此它识别出版商

发布商密钥:针对最终客户使用的Digitaly最终发布应用

工作者开发者密钥:eclipse(使用ADT)容易生成1年有效期

因此,如果您的问题是:一个发布者3个工作者......单个发布者密钥对就足够了 如果您不想将私钥提供给工作人员......

!!事实上,发布者不必向工作人员提供发布者私钥

- >工人只需要有效期为1年的eclipse自动生成的开发密钥 可以在我想要的时间重新生成,但不能用于发布用法

- >发布商会将最终的APK应用程序(由工作人员提供)文件取消签名,然后发布商会将这些APK签名/压缩到新的APK中,以“按原样”提供给最终客户或上传到市场商店。