The Flurry integration is a bi-directional integration that enables the automatic tracking of events from Flurry to Taplytics and the ability to push Experiment and Feature Flag data from Taplytics back into Flurry.


Flurry to Taplytics

The Flurry integration allows you to leverage the same client-side events being sent from your App for Goal Creation on the Taplytics platform. These events will automatically flow into Taplytics and will be visible in the Code Event dropdown. For more information on goal creation, please see here.

Note: The Android integration is not supported for Flurry version 7+

571

Android

To properly support sending Flurry data on Android, you'll need to tell Taplytics whenever a new Flurry session begins. This can be done directly after Flurry initialization.

FlurryAgent.init(this, "your flurry API key");

FlurryAgent.setFlurryAgentListener(new FlurryAgentListener() {
    @Override
    public void onSessionStarted() {
        Taplytics.startFlurrySession();
    }
});
FlurryAgent.init(this, "your flurry API key")

FlurryAgent.setFlurryAgentListener(object:FlurryAgentListener() {
  fun onSessionStarted() {
    Taplytics.startFlurrySession()
  }
})

Taplytics to Flurry

The Taplytics SDK can automatically push Experiment and Feature Flag data back to your Flurry instance so that you may continue reporting on your desired analytics platform.

To enable this feature, turn on the Flurry toggle in the Push Experiments to Analytics Sources section located at the bottom of the Settings page.

1166

Android

Taplytics logs experiment/variation events to the Flurry Android SDK as follows:

HashMap<String, String> experimentsAndVariations = new HashMap<>();
experimentsAndVariations.put("Experiment 1", "Variation 1");
experimentsAndVariations.put("Experiment 2", "Variation 3");

FlurryAgent.logEvent("TL_Experiments", experimentsAndVariations)

iOS

Taplytics logs experiment/variation events to the Flurry iOS SDK as follows:

NSDictionary* experimentsAndVariations = @{
    @"Experiment 1": @"Variation 1",
    @"Experiment 2": @"baseline"
};
[Flurry logEvent:@"TL_experiments" withParameters:experimentsAndVariations];
let experimentsAndVariations = [
    "Experiment 1": "Variation 1",
    "Experiment 2": "baseline"
]
Flurry.logEvent("TL_experiments", withParameters: experimentsAndVariations)