Android studio 在android studio项目中保存生成的密钥库文件安全吗?

Android studio 在android studio项目中保存生成的密钥库文件安全吗?,android-studio,security,keystore,Android Studio,Security,Keystore,几个月前,我决定将我的应用程序放在playstore上。这意味着我需要生成一个密钥库文件(文件扩展名为.jks)。我把那个文件保存在不同的目录里。我在这里引用了它: android { signingConfigs { debug { storePassword 'Store password' keyAlias 'The key alias' storeFile file('TheDirectory

几个月前,我决定将我的应用程序放在playstore上。这意味着我需要生成一个密钥库文件(文件扩展名为.jks)。我把那个文件保存在不同的目录里。我在这里引用了它:

android {
    signingConfigs {
        debug {
            storePassword 'Store password'
            keyAlias 'The key alias'
            storeFile file('TheDirectoryPathItIsIn/MyKeyStore.jks')
            keyPassword 'The password'
        }
    }

....

}
我成功地把它放在了谷歌游戏商店上。所以一切都很好。几个月后,我让其他人在git中提取我的回购协议(这意味着他们只需获取代码),并在另一台使用android studio的设备上运行我的应用程序。但它在运行时抛出了一个错误,称未找到/MyKeyStore.jks中的directorypathitisin。因此,我将密钥库文件移动到我的Android Studio项目中(
MyAndroidStudioProject/MyKeyStore.jks
),并将其引用为
storeFile文件('./MyKeyStore.jks')
)。然后没有显示错误,但从那以后,我一直在想,出于安全原因,在android studio项目中存储生成的密钥库文件是否不好。如果是,在哪里储存


我真的不知道密钥库文件(.jks)的用途。因为它实际上说的不多,所以它只是符号。因此,对这一点的任何解释都是非常好的。

这里有几点需要注意

  • 你问密钥库是做什么用的。每个应用程序都有一个唯一的签名,用于标识其真实性。当用户更新你的应用程序时,他们只能在使用相同密钥签名时安装新版本。这可以防止恶意方通过分发修改后的版本来破坏应用程序更新。请在此处阅读更多信息:

  • 回答您的标题问题:只要Git存储库是私有的,并且只有您(以及您的开发团队的其他成员)可以访问它,就可以将密钥库留在存储库中,特别是当它使用安全密码加密时。不过,为了增加安全性,它应该单独保存,并且永远不应该上传到公共Git存储库。但请做好备份,因为如果没有它,您将无法再发布此应用程序的应用程序更新

  • 关于您的同事遇到的错误,这是因为您以
    debug
    key的形式输入了密钥库。这不是必需的,您通常可以使用默认的调试键来调试您的应用程序。您绝对不应该发布调试版本,您应该发布一个内置于
    发布
    模式的应用程序,可以使用Gradle脚本,也可以选择“Build”→ “生成签名包/APK”,它将要求您提供密钥库,而无需修改Gradle文件。 另见: