我刚刚注册了Firebase,并创建了一个新项目。 Firebase问我的app域和SHA1调试密钥。我输入了这些详细信息,并生成了一个google-services.json文件供我添加到我的应用模块的根目录中。
我的问题是,是否应将此.json文件添加到公共(开源)存储库中。它应该是秘密的,比如API密钥吗?
答案 0 :(得分:59)
google-services.json
个文件是from the Firebase doc:
Firebase通过单个配置文件管理您的所有API设置和凭据 该文件在Android上名为
google-services.json
,在iOS上名为GoogleService-Info.plist
。
将它添加到.gitignore
并且不将其包含在公共仓库中似乎是有意义的
这已在issue 26中进行了讨论,其中详细介绍了google-services.json
包含的内容。
像googlesamples/google-services
之类的项目确实拥有in its .gitignore
虽然commented为stepheaw,但thread does mention
对于库或开源示例,我们不包含JSON文件,因为其意图是用户插入自己的代码以将代码指向自己的后端。
这就是为什么你在GitHub上的大多数firebase repos中都看不到JSON文件的原因。
如果"数据库URL,Android API密钥和存储桶"对你来说不是秘密,那么你可以考虑将文件添加到你的仓库 正如" Is google-services.json safe from hackers?"中提到的那样,这并不是那么简单。
答案 1 :(得分:26)
从this讨论看来,您似乎可以将其添加到公共回购中。无论如何,它的内容最终会在APK中提取,并且很容易提取。