Integrations
Google Analytics for Firebase is a free and unlimited analytics solution. Analytics integrates across many Firebase features and provides you with unlimited reporting of up to 500 distinct events, helping you understand how people use your iOS or Android app.
mParticle’s Google Analytics for Firebase integration supports the Android and iOS platforms and requires the usage of a client-side kit.
mParticle only integrates with the analytics featureset of the Firebase suite. Due to this, the typical app should manually include the Firebase SDK in their app along with the requires json or plist configuration file to take advantage of other populate Firebase features.
Due to a known issue in the Firebase Android SDK, it is impossible to programatically initialize Firebase at runtime - you must follow the Firebase documentation for adding Firebase to your application. mParticle will be tracking this issue and if it is resolved, the integration will be updated to support runtime initialization.
The Firebase kit will detect if you have initialized Firebase, and use the existing instance in your app if present. Despite this, all typical mParticle controls such as data filtering and user-filtering are available as expected to protect the flow of event data from mParticle to Firebase. However, by directly including the Firebase SDK and configuration files in your app, mParticle cannot prevent it from collecting other data automatically.
Please see Firebase’s Android setup guide here.
Unlike Android, the Firebase iOS SDK supports runtime initialization, so the Firebase kit implements the following:
Regardless of the approach you would like to take, you will need to follow the Firebase docs to create a Firebase project and download your GoogleService-Info.plist
configuration file. You must then include the plist directly in your app.
Please see Firebase’s iOS setup guide here.
mParticle’s Firebase integration requires that you add the Firebase Kit to your iOS or Android app. This kit-only integration solely supports client-side data forwarding.
mParticle publishes the Firebase Kit as separate iOS and Android libraries which have a transitive dependency on the mParticle core libraries. You can add them to your app via Carthage, Cocoapods, or Gradle:
target '<Your Target>' do
pod 'mParticle-Google-Analytics-Firebase'
end
dependencies {
// Ensure the Kit version matches that of the mParticle Core SDK that you're using
compile 'com.mparticle:android-googleanalyticsfirebase-kit:VERSION'
}
Reference the Apple SDK and Android SDK guides to read more about kits.
You can configure the integration to automatically map the following identities to Firebase’s “setUserId” API:
The Firebase integration will also map mParticle’s user_attributes
to user properties. Learn how to set user_attributes
through our Events API here.
mParticle will forward all custom events including their name and any custom attributes to Firebase’s respective logEvent
API.
The kit integrations will automatically invoke Firebase’s setScreen
APIs for every screen event passed through mParticle.
mParticle will automatically map commerce events to Firebase event names based on the product action.
Firebase Event | Android | iOS | Notes |
---|---|---|---|
add_payment_info |
Product.CHECKOUT_OPTION |
MPCommerceEventActionCheckoutOptions |
Requires custom flags |
add_shipping_info |
Product.CHECKOUT_OPTION |
MPCommerceEventActionCheckoutOptions |
Requires custom flags |
purchase |
Product.PURCHASE |
MPCommerceEventActionPurchase |
|
add_to_cart |
Product.ADD_TO_CART |
MPCommerceEventActionAddToCart |
|
remove_from_cart |
Product.REMOVE_FROM_CART |
MPCommerceEventActionRemoveFromCart |
|
add_to_wishlist |
Product.ADD_TO_WISHLIST |
MPCommerceEventActionAddToWishList |
|
begin_checkout |
Product.CHECKOUT |
MPCommerceEventActionCheckout |
|
select_content |
Product.CLICK |
MPCommerceEventActionClick |
|
view_item |
Product.DETAIL |
MPCommerceEventActionViewDetail |
|
refund |
Product.REFUND |
MPCommerceEventActionRefund |
|
remove_from_wishlist |
Product.REMOVE_FROM_WISHLIST |
No mapping |
The following Firebase attributes will be automatically be mapped to the equivalent mParticle attribute for Commerce events.
checkout_step
checkout_option
coupon
currency
item_brand
item_category
item_id
item_name
item_variant
price
quantity
shipping
tax
transaction_id
value
Custom flags are used to send partner-specific data points:
Custom Flag | Data Type | Platform | Description |
---|---|---|---|
firebase.CommerceEventType |
string |
All | One of add_shipping_info or add_payment_info . Constants are available on Android and iOS/tvOS. |
Setting Name | Data Type | Default Value | Platform | Description |
---|---|---|---|---|
Firebase App ID | string |
iOS | Your Firebase application ID. You can find this in your Firebase project’s config json or plist. | |
Google Project Number | string |
iOS | Your Google API console project number, also known as GCM sender ID. You can find this in your Firebase project’s config json or plist. | |
User ID | enum |
Customer ID | All | Select which user identity to forward to Firebase as your customer’s user ID. |
Was this page helpful?