对 Google API 的 API 密钥进行版本控制是否安全

Is it safe to version control an API key for Google API's

我有一个开源 android 应用程序。 例如,为了使用新的 Awareness API,我需要有一个 api key 我的应用程序将使用它。

那个是通过提供包名和证书的 SHA-1 生成的。

它的存储位置是Manifest.xml当然是受版本控制的

这里安全吗?由于我的项目是开源的,任何人都可以看到这个密钥,但他真的可以使用它吗?为什么?

P.S。上面的说明可以找到here

我不会对其进行版本控制,而是将其放在一个单独的 XML 文件中,然后将其放在 .gitignore 中。您可以在 String Resources 文件中引用 XML 文件,而不是使用硬编码的 API Key,而是使用与 API Key 对应的 String Resource,例如 @string/API_KEY.这是一种更安全的方法。这样,您就不会将密钥打开到 public 访问权限,并且应用程序仍然具有所需的相应数据。