Является ли google-services.json конфиденциальным?
Следуя руководству по настройке Google Analytics в приложении для Android ( 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.
5 ответов
Это следует считать конфиденциальным. Сгенерированный файл JSON содержит api_key
что вы можете использовать для отправки push-уведомлений.
Если вы перейдете на страницу "Учетные данные" в консоли разработчика Google, вы увидите ключ в файле json, указанный в разделе API keys
Из этого поста, похоже, нет реальной причины хранить этот файл в безопасности. Все равно эти данные будут в APK.
Да. По крайней мере api_key
вещи должны быть конфиденциальными.
Один из способов поставить google-services.json
в ваш общедоступный репозиторий и по-прежнему сохранять его конфиденциальность, это использовать BlackBox.
На уровне вашего приложения build.gradle
например, поставить задачу копирования defaultConfig
как это:
defaultConfig {
...
...
copy {
from "../secret/"
into "."
include "*.json"
}
}
который скопирует файл из вашего secret/
папка в нужное место.
Теперь, чтобы создать приложение, вам нужно запустить blackbox_edit_start google-services.json.gpg
в первый раз вы проверяете свой репо, и после этого у вас все хорошо.
значения изgoogle_services.json
хранятся в виде простого текста вresources.arsc
файл. Этот файл хранится в зашифрованном виде в apk, и его можно прочитать, простоunzip
-ing apk. Я бы сказал, что по этой причине он не может хранить ценные данные.