Back to Flutterfire

Get Started

docs/analytics/_get-started.md

4.6.0-firebase-core-swift3.6 KB
Original Source

{# This content gets published to the following location: #} {# https://firebase.google.com/docs/analytics/get-started?platform=flutter #}

Google Analytics collects usage and behavior data for your app. The SDK logs two primary types of information:

  • Events: What is happening in your app, such as user actions, system events, or errors.
  • User properties: Attributes you define to describe segments of your user base, such as language preference or geographic location.

Analytics automatically logs some events and user properties; you don't need to add any code to enable them.

Before you begin

  1. Install firebase_core and add the initialization code to your app if you haven't already.
  2. Add your app to your Firebase project in the Firebase console.

Add the Analytics SDK to your app {:#add-sdk}

  1. From the root of your Flutter project, run the following command to install the plugin:

    bash
    flutter pub add firebase_analytics
    
  2. Once complete, rebuild your Flutter application:

    bash
    flutter run
    
  3. Once installed, you can access the firebase_analytics plugin by importing it in your Dart code:

    dart
    import 'package:firebase_analytics/firebase_analytics.dart';
    
  4. Create a new Firebase Analytics instance by accessing the instance property on FirebaseAnalytics:

    dart
    FirebaseAnalytics analytics = FirebaseAnalytics.instance;
    

Start logging events

After you have created a FirebaseAnalytics instance, you can begin to log events with the library's log- methods.

Certain events are recommended for all apps; others are recommended for specific business types or verticals. You should send recommended events along with their prescribed parameters, to ensure maximum available detail in your reports and to benefit from future features and integrations as they become available. This section demonstrates logging a predefined event, for more information on logging events, see Log events.

The following code logs a checkout event:

dart
await FirebaseAnalytics.instance
  .logBeginCheckout(
    value: 10.0,
    currency: 'USD',
    items: [
      AnalyticsEventItem(
        itemName: 'Socks',
        itemId: 'xjw73ndnw',
        price: '10.0'
      ),
    ],
    coupon: '10PERCENTOFF'
  );

Using Analytics without Ad ID support (iOS) {:#without-ad-id}

If your app doesn't use IDFA, you can use FirebaseAnalyticsWithoutAdIdSupport instead of the default FirebaseAnalytics iOS dependency to avoid App Store review questions about advertising identifiers.

Swift Package Manager

Set the FIREBASE_ANALYTICS_WITHOUT_ADID environment variable when building:

bash
FIREBASE_ANALYTICS_WITHOUT_ADID=true flutter build ios

You can also add this variable to your Xcode scheme's environment variables for persistent configuration.

CocoaPods

Add this to your app's Podfile:

ruby
pod 'FirebaseAnalytics', :modular_headers => true
pod 'FirebaseAnalyticsWithoutAdIdSupport', :modular_headers => true

Next steps