按照在Android应用中设置Google Analytics的指南(https://developers.google.com/analytics/devguides/collection/android/v4/),我想知道这个google-services.json文件是否可以安全地提交到源代码版本控制并推送到公共GitHub存储库或如果此文件可能包含凭据或秘密。
我在其他地方找不到明确的答案,但我可以看到示例应用程序都提交文件(https://github.com/google/climb-tracker/blob/master/mobile/google-services.json),而其他人已将文件添加到他们的.gitignore。
答案 0 :(得分:12)
从this张贴起来似乎没有理由保证这个文件的安全。无论如何,它的数据将在APK中。
答案 1 :(得分:7)
应该被视为机密。生成的json文件包含可用于发送推送通知的api_key
。
如果您转到Google Developer Console上的“凭据”页面,您会在API keys
答案 2 :(得分:4)
是。至少api_key
内容应该保密。
将google-services.json
放入公共存储库并保持机密的一种方法是使用BlackBox。
在您的应用级别build.gradle
中放置一个复制任务,例如defaultConfig
,如下所示:
defaultConfig {
...
...
copy {
from "../secret/"
into "."
include "*.json"
}
}
会将文件从secret/
文件夹复制到正确的位置。
现在,要构建您的应用,您必须在第一次检查回购时运行blackbox_edit_start google-services.json.gpg
,之后您就会好起来。