Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to disable/remove FirebaseAnalytics

I update 'Google/Analytics' from CocoaPod and get FirebaseAnalytics.

After that, each time I run project, the FirebaseAnalytics turns out many error loggings.

Currently I don't use this library and want to remove it. Unfortunately I can't find any way to disable / remove it out of Pod.

Here is the Podfile configuration

target 'myApp' do
    inhibit_all_warnings!
    use_frameworks!
    pod 'Google/Analytics'
end

Console log:

<FIRAnalytics/DEBUG> Debug mode is on
<FIRAnalytics/INFO> Firebase Analytics v.3200000 started
<FIRAnalytics/INFO> To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see 'https://developer.apple.com/library/ios/recipes/xcode_help-scheme_editor/Articles/SchemeRun.html')
<FIRAnalytics/DEBUG> Debug logging enabled
<FIRAnalytics/DEBUG> Firebase Analytics is monitoring the network status
<FIRAnalytics/DEBUG> Uploading data. Host: https://play.googleapis.com/log
<FIRAnalytics/INFO> Successfully created Firebase Analytics App Delegate Proxy automatically. To disable the proxy, set the flag FirebaseAppDelegateProxyEnabled to NO in the Info.plist
<FIRAnalytics/INFO> Firebase Analytics disabled
...
<FIRAnalytics/DEBUG> Network status has changed. code, status: 2, Connected
<FIRAnalytics/DEBUG> Network status has changed. code, status: 2, Connected
<FIRAnalytics/DEBUG> Received SSL challenge for host. Host: https://play.googleapis.com/log
<FIRAnalytics/DEBUG> Cancelling authentication challenge for host. Host: https://play.googleapis.com/log
<FIRAnalytics/ERROR> Encounter network error. Error: Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo={NSErrorFailingURLKey=https://play.googleapis.com/log, NSLocalizedDescription=cancelled, NSErrorFailingURLStringKey=https://play.googleapis.com/log}
...

UPDATE: I also try to add FirebaseAppDelegateProxyEnabled = false in Info.plist but it doesn't work either.

enter image description here

like image 371
nahung89 Avatar asked May 30 '16 05:05

nahung89


People also ask

How do I turn off Firebase Analytics?

If you need to deactivate Analytics collection permanently in a version of your app, set FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED to YES (Boolean) in your app's Info.

How do I get rid of Firebase app indexing?

Sign in to Firebase, then open your project. , then select Project settings. In the Your apps card, select the app that you want to delete. Under the Your apps card, click Remove this app.


3 Answers

To disable the collection of data by Firebase Analytics in your app, see the instructions here.

In summary, to disable temporarily, set FIREBASE_ANALYTICS_COLLECTION_ENABLED to NO in the GoogleServices-Info.plist file. To disable permanently, set FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED to YES in the same plist file.

like image 153
Steve Ganem Avatar answered Sep 17 '22 15:09

Steve Ganem


For 2018

For 2018, you Info.plist will have entries like this:

<key>FIREBASE_ANALYTICS_COLLECTION_ENABLED</key> <string>NO</string> <key>FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED</key> <string>YES</string> <key>FirebaseScreenReportingEnabled</key> <false/> 

It seems to be in Info.plist, NOT GoogleServices-Info.plist.

like image 36
Fattie Avatar answered Sep 20 '22 15:09

Fattie


I recently ran into a similar issue. I'm using Google Analytics but do not want or need Firebase analytics, which is installed by default if you follow the docs. After searching through the podspecs. I found that the Google/Analytics subspec has a dependency on Google/Core. The core subspec in turn depends on FirebaseAnalytics which is why it is getting installed.

I noticed, however, that the Analytics subspec also depends on the GoogleAnalytics cocoapods.

So I changed my Podfile from:

target 'myApp' do
    inhibit_all_warnings!
    use_frameworks!
    pod 'Google/Analytics'
end

To this:

target 'myApp' do
    inhibit_all_warnings!
    use_frameworks!
    pod 'GoogleAnalytics'
end

As a result, the Google/Analytics.h umbrella header is no longer available, and you need to include the correct headers manually or create your own umbrella header with the following includes:

#import "GAI.h"
#import "GAIDictionaryBuilder.h"
#import "GAIEcommerceFields.h"
#import "GAIEcommerceProduct.h"
#import "GAIEcommerceProductAction.h"
#import "GAIEcommercePromotion.h"
#import "GAIFields.h"
#import "GAILogger.h"
#import "GAITrackedViewController.h"
#import "GAITracker.h"

If you're doing this in a Swift project, you'll need to add these files to your bridging header in place of the umbrella header.

In my opinion, this is a small price to pay to not be forced to install the FirebaseAnalytics cocoapod.

Update

Although Google's docs haven't been updated, their podspec now tells you to use the GoogleAnalytics pod directly

like image 44
allenh Avatar answered Sep 17 '22 15:09

allenh