19

Postępując zgodnie ze wskazówkami na temat konfigurowania Google Analytics w aplikacji na Androida (https://developers.google.com/analytics/devguides/collection/android/v4/), zastanawiam się, czy ten plik google-services.json można bezpiecznie przekazać do wersji kodu źródłowego i przekazać do publicznego repozytorium GitHub lub jeśli ten plik może zawierać referencje lub tajemnice.Czy usługa google-services.json jest poufna?

Nie mogę znaleźć konkretnej odpowiedzi w innym miejscu, ale widzę, że przykładowe aplikacje zarówno zatwierdzają plik (https://github.com/google/climb-tracker/blob/master/mobile/google-services.json), jak i inne, dodały plik do pliku .gitignore.

Odpowiedz

6

Należy uznać za poufny. Wygenerowany plik json zawiera api_key, którego można użyć do wysyłania powiadomień push.

Jeśli pójdziesz na stronie Poświadczenia na Google Developer Console, zobaczysz klucz w pliku json wymienione pod API keys

+0

Jak widać w [ten post] (https://stackoverflow.com/a/37484053/5861618), klucz API identyfikuje projekt Firebase na serwerach Google. Nie jest to ryzyko dla bezpieczeństwa, aby ktoś o tym wiedział. –

3

Tak. Przynajmniej te rzeczy powinny być poufne.

Jednym ze sposobów umieszczenia google-services.json w swoim publicznym repozytorium i nadal zachować poufność jest użycie BlackBox.

w aplikacji poziomie build.gradle umieścić zadanie kopiowania w np defaultConfig tak:

defaultConfig { 
    ... 
    ... 
    copy { 
     from "../secret/" 
     into "." 
     include "*.json" 
    } 
} 

który skopiuje plik z folderu secret/ we właściwym miejscu.

Teraz, aby zbudować swoją aplikację, po raz pierwszy musisz sprawdzić, czy po raz pierwszy sprawdzasz swoje repozytorium, a po tym jesteś dobry.

9

Od this post wydaje się, że nie ma żadnego prawdziwego powodu, aby ten plik był bezpieczny. W każdym razie dane będą w pakiecie APK.

+1

Plik APK może zostać zdekompilowany ... – stepheaw