2017-10-21 51 views
2

由于丢失应用程序的签名密钥非常可怕,因此很显然建议您保持安全并备份它。KeyStore的Android Studio备份

这方面的docs有点混淆(至少对我来说),指的是“应用程序签名密钥”和“密钥库”,好像这些是单独的事情,需要单独管理和备份。是不是“应用程序签名密钥”部分定义在的“密钥库”,是不是不同呢?

无论如何,为了确保我正在备份所需的所有内容,以便如果我的硬盘被损坏,或者即使刚建立新工作站并想重新创建IDE时,它是公平地说,(只要该应用程序签名密钥而言)的唯一件事我需要备份的是.jks文件,该文件是在storeFile部分提到我build.gradle这里:

signingConfigs { 
    development { 
     keyAlias 'MyKeyAlias' 
     keyPassword 'mykeypassword' 
     storeFile file('C:/Users/MyName/my-android-keystores/my-android-keystore.jks') 
     storePassword 'mystorepassword' 
    } 
} 
defaultConfig { 
    signingConfig signingConfigs.development 
} 
+0

检查我更新的答案我希望这将有助于您的安全措施。我已经更新了它。您不必担心保护您的应用程序。 – Xenolion

回答

1

是不是“应用程序签名密钥”的一部分或定义在“keystore”,与它没有区别吗?

是的,签名密钥位于密钥库中。

我需要备份的唯一事情是在这里我的build.gradle

中提到的storeFile部分单.jks文件,您还需要build.gradle文件本身或别的东西有你的密码(例如,密码安全)。

+0

是的好点,我实际上已经保留'build.gradle'的密码部分的快照(并且将其与我的项目代码的其余部分一起备份到专用bitbucket回购),再加上'.jks '分开存档。所以看起来,我的项目代码(包括'build.gradle')加上'.jks'文件,如果我需要从头开始重新创建我的设置,我很高兴。 – drmrbrewer

2

Keystore顾名思义就是它可能包含许多应用程序的商店,但它也可能与您的开发环境有关。

但是,如果您担心保护您的钥匙,请考虑使用新的 Google Play应用程序签名,如link from the official source所示。

因为您的应用程序签名密钥是用来验证您的身份作为一个开发者,并确保您的用户提供无缝,安全更新,管理你的钥匙,并保持它的安全是非常重要的,既为您和您的用户。您可以选择要么选择使用谷歌Play应用签名安全地管理和使用谷歌的基础设施商店中的应用的签名密钥或管理和保护自己的密钥库和应用程序签名密钥

使用谷歌Play应用在签约减少担心,因为它会让你的钥匙,你会有上传密钥,这是相对容易恢复的情况下,坏的情况下这是一个引用来自上述相同的链接。

使用Google Play App签名时,您将使用两个密钥:应用签名密钥和上传密钥。 Google管理并保护您的应用签名密钥,并保留上传密钥并使用该密钥签署应用以上传至Google Play商店。

您应该考虑访问the link again for more information on protecting your apps keys

+0

谢谢。我已经知道新的应用签名选项,您可以将密钥有效地传输给Google,供他们查看。我不愿意那样做。我宁愿确保我可以在我的末尾签署apk,并确保它不会被链中的任何人改变。另外,我已经备份了我的其他重要内容(文档,照片等),因此在备份集中包含签名密钥不会有任何额外麻烦。丢失我的应用程序签名密钥不会比丢失任何其他重要数据更具灾难性,所以我可以对待它们。 – drmrbrewer