3rd party integrations
...
Purple Tracking
Tracking Services

Firebase

24min
summary official websites site url website https //firebase google com documentation https //firebase google com/docs developer integrations platform url android https //github com/firebase/firebase android sdk ios https //github com/firebase/firebase ios sdk web not supported by purple not supported by purple tracking service event support matrix overview of the supported events and their configuration templates parameter actions actions action action supported supported views views name name supported supported attributes attributes name name not supported not supported purchases purchases are not supported, since they collected automatically by firebase general structure in tracking config json tracking service key name in " tracking config json " is " firebase analytics firebase analytics " general structure { "firebase analytics" { "eventsenabledbydefault" true, "viewsenabledbydefault" true, "purchasesenabledbydefault" false, "attributesenabledbydefault" true, "events" { // your configured list of events }, "views" { // your configured list of events }, "purchases" {}, "attributes" { // your configured list of attributes } } } event configuration restrictions for tracking firebase analytics has some restrictions restrictions for event names event names , event parameters event parameters and attributes attributes further descriptions can be found in the official documentation ios swift https //firebase google com/docs/reference/swift/firebaseanalytics/api/reference/classes/analytics#logevent parameters https //firebase google com/docs/reference/swift/firebaseanalytics/api/reference/classes/analytics#logevent parameters android kotlin https //firebase google com/docs/reference/kotlin/com/google/firebase/analytics/firebaseanalytics#logevent https //firebase google com/docs/reference/kotlin/com/google/firebase/analytics/firebaseanalytics#logevent global restrictions for events up to 500 500 event names are supported an event can have up to 25 25 parameters there are reserved reserved event names which cannot be used ( ios and android ) global restrictions for attributes up to 25 25 user property names are supported the following user property names are reserved reserved and cannot be used " first open time first open time " " first visit time first visit time " (android only) " first open after install first open after install " (android only) " last deep link referrer last deep link referrer " " user id user id " restrictions of an event event restrictions name name should contain 1 to 40 alphanumeric 1 to 40 alphanumeric characters or underscores underscores the name must start with an alphabetic alphabetic character the “ firebase firebase ”, “ google google ”, and “ ga ga ” prefixes are reserved reserved and should not be used parameter parameter (key/value) (key/value) parameter keys keys can be up to 40 characters 40 characters long must start with an alphabetic character must contain only alphanumeric alphanumeric characters and underscores underscores must not be prefixed with “ firebase firebase ”, “ google google ”, or “ ga ga ” since these are reserved reserved prefixes and should not be used pameter values values can be up to 100 characters 100 characters long restrictions of an attribute attribute restrictions key key the key should contain 1 to 24 alphanumeric 1 to 24 alphanumeric characters or underscores underscores the key must start with an alphabetic alphabetic character the “ firebase firebase ”, “ google google ”, and “ ga ga ” prefixes are reserved reserved and should not be used value value values can be up to 36 characters 36 characters long actions firebase supports action events action event "action event key" { "templates" { "action" "value of template" }, "parameters" { "parameter key 1" "value of parameter", // your configured list of parameters } } example "issue downloaded" { "templates" { "action" "issue downloaded" }, "parameters" { "issue id" "{{issue id}}", "issue name" "{{issue name}}", "issue categories" "{{issue categories}}", "issue tags" "{{issue tags}}", "issue purchasable" "{{issue purchasable}}", "issue purchased" "{{issue purchased}}", "publication id" "{{publication id}}", "publication name" "{{publication name}}" } } views view event "view event key" { "templates" { "name" "value of template" } } example "storefront feed" { "templates" { "name" "feed" } } according to the official documentation, a manually triggered view event should be named “ screen view screen view ” purple implements this as follows every view event is sent using the name " screen view screen view " the value of the " name name " template will be added as additional parameter value using the parameter key " screen name screen name " to this view event the parameter is added as follows " screen name screen name " " value of name template value of name template " purchases firebase does not support purchase events all purchases are collected automatically but this is restricted to purchases from the apple app store or the google play store attributes firebase supports attributes attribute "attribute key" { "templates" { "name" "value of template" } } example "has active subscription" { "templates" { "name" "has active subscription" } } since firebase analytics does not support boolean attributes, these will be saved as string attributes so the boolean value true true becomes the string " true true " the same behavior applies to boolean value false false which becomes " false false " additional supported functionality cloud messaging https //firebase google com/docs/cloud messaging https //firebase google com/docs/cloud messaging?hl=en this feature is enabled as provided by firebase cloud messaging crashlytics https //firebase google com/docs/crashlytics https //firebase google com/docs/crashlytics/?hl=en this feature is enabled as provided by firebase crashlytics crash report enhancement to enhance this feature purple adds some custom values to every crash report as follows to have a better determination of affected app versions custom value description app id app id the id of the app app version app version the version of the app server server the server base url locale locale the first preferred language from the list of all preferred languages on that device the format is for example " de de de de " for german or " en en en en " for english pk version pk version the version of the used purplekit dynamic links https //firebase google com/docs/dynamic links https //firebase google com/docs/dynamic links?hl=en it is not recommended to use firebase dl as it is deprecated and the service will be discontinued soon there will be no replacement by firebase itself read more in the official documentation https //firebase google com/support/dynamic links faq https //firebase google com/support/dynamic links faq?hl=en this feature is enabled as provided by firebase dynamic links would you still like to find out more? then read firebase dynamic links docid\ uzdugswlxihu5i0ysizl2 in our documentation in app messaging https //firebase google com/docs/in app messaging https //firebase google com/docs/in app messaging?hl=en this feature is enabled as provided by firebase in app messaging debug mode https //firebase google com/docs/analytics/debugview https //firebase google com/docs/analytics/debugview?hl=en this feature is enabled as provided by firebase and the debug mode is applied to preview builds only how to configure native purple app any native tracking service is configured in the purple manager purple manager enable sdk settings location " your app your app " => " consent/push/analytics consent/push/analytics " => " firebase configuration firebase configuration (general/ios/android) (general/ios/android) " setting description enable firebase analytics to enable the firebase analytics sdk in your app, activate this checkbox enable firebase crashlytics to enable the firebase crashlytics sdk in your app, activate this checkbox enable firebase dynamic links to enable the firebase dynamic links sdk in your app, activate this checkbox configuration settings are different by the used platform setting (android) description firebase configuration file google services json google services json for a firebase project within the firebase console, you can download this configuration file service account key serviceaccountkey json serviceaccountkey json for a firebase project within the firebase console, you can download this configuration file this file is needed for push messages enable firebase in app messaging to enable the firebase in app messaging sdk in your app, activate this checkbox setting (ios) description firebase configuration file googleservice info plist googleservice info plist for a firebase project within the firebase console, you can download this configuration file enable firebase in app messaging to enable the firebase in app messaging sdk in your app, activate this checkbox enable firebase cloud messaging to enable the firebase cloud messaging sdk in your app, activate this checkbox enable firebase debug mode to enable the firebase debug mode debug mode , activate this checkbox the debug mode debug mode is applied for preview builds only apple privacy / att settings location " your app your app " => " consent/push/analytics consent/push/analytics " => " privacy privacy " consent management settings location " your app your app " => " consent/push/analytics consent/push/analytics " => " consent management consent management " setting description vendor id for firebase the vendor id is provided by the consent management platform web integration purple does not support firebase web integration