2016-06-30 54 views
7

Ho aggiunto l'analisi Firebase nella mia app solo per provarlo. Ho seguito i passaggi nelle linee guida ufficiali.Rimuovi completamente l'analisi firebase dall'app Android

Ora ho deciso contro. Ho annullato qualsiasi cosa avessi fatto per aggiungerla. (voci rimosse dal livello di progetto e il livello di applicazione build.gradle; rimossi tutti gli utilizzi dal codice sorgente.)

Ma io sono ancora ricevendo i registri come

I/FirebaseInitProvider: FirebaseApp initialization successful 

quando le mie corse app.

Questo mi porta a credere che non l'ho rimosso completamente. Questa è davvero una preoccupazione per me ora perché la mia app ha superato il limite del conteggio dei metodi e ho dovuto abilitare il multidex.

Come posso rimuovere completamente Firebase dalla mia app?

risposta

6

Aggiunta

configurations { 
    all*.exclude group: 'com.google.firebase', module: 'firebase-core' 
    all*.exclude group: 'com.google.firebase', module: 'firebase-iid' 
} 

rimuove tutte le linee da app/app.iml contenente Firebase (e che non vengano aggiunti automaticamente di nuovo) e rimuove tutte le librerie Firebase da codice generato e output intermedi pure.

Rispetto alla risposta precedente, questo elimina altri 87.000 byte dalla dimensione dell'apk.

Anche se non riesco ancora a capire perché dovrei aggiungere altro codice per annullare l'aggiunta di qualcosa. Probabilmente è un bug nel sistema di build.

@isnotmenow: Grazie mille per avermi indicato in questa direzione.

6

Se si desidera rimuovere completamente il firebase, è possibile ottenerlo invertendo i passaggi di configurazione.

  1. Rimuovere 'com.google.gms: google-servizi: 3.0.0' classpath dal Gradle progetto.
  2. Rimuovi compile 'com.google.firebase: firebase-core: 9.2.0' dall'app build.gradle.
  3. Rimuovi applica il plug-in: "com.google.gms.google-services" dalla parte inferiore di build.gradle.
  4. Rimuovi FirebaseService codice dal progetto.
  5. Rimuovere google-services.json dal progetto.
  6. Rimuovi la chiave di google dal tuo manifest.
  7. Rimuovi la chiave di google dal valore della risorsa.
  8. Pulire il progetto.
  9. Progetto di costruzione.
  10. Rimuovere l'app installata dal dispositivo di test, quindi installarla di nuovo.

- AGGIORNAMENTO -

Da https://stackoverflow.com/a/37945280/4758255:

io vi suggerisco di escludere il gruppo Firebase utilizzando Gradle in App module build.gradle, è possibile aggiungere questo in dipendenza:

compile('com.google.android.gms:play-services-ads:9.0.2') { 
    exclude group: 'com.google.firebase', module: 'firebase-common' 
} 

compile('com.google.android.gms:play-services-gcm:9.0.2') { 
    exclude group: 'com.google.firebase', module: 'firebase-common' 
} 

Oppure, applica semplicemente una configurazione di esclusione globale (ricorda che questa dovrebbe essere al di fuori di qualsiasi funzione di groovy), come questa:

configurations { 
    all*.exclude group: 'com.google.firebase', module: 'firebase-common' 
} 
+0

Sto utilizzando google analytics e mappe API nella mia app. Quindi non posso seguire 1, 3, 5, 6 e 7 ora. 2, 4, 8, 9, 10 sono stati curati. Per quanto mi ricordo, avevo seguito tutti questi passaggi per rimuovere Firebase prima di aggiungere Google Analytics e mappe. –

+0

Hai utilizzato l'intero pacchetto di servizi di riproduzione, i.e ** compila "com.google.android.gms: play-services: 9.2.0 '**? –

+0

@ KanjNarayan, leggi la mia nuova risposta aggiornata. Potrebbe aiutarti. –