Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Flurry 4.2.2 SDK not sending events session data in iOS

I know that there is a delay in Flurry reporting, however, we are seeing no results the following day on Flurry's reporting.

    [Flurry setDebugLogEnabled:YES];
    [Flurry setLogLevel:FlurryLogLevelDebug];
    [Flurry startSession:_appSettings.flurryAppId];
    [Flurry setSessionReportsOnCloseEnabled:YES];
    [Flurry setSessionReportsOnPauseEnabled:YES];
    [Flurry setEventLoggingEnabled:YES];
    UIDevice *device = [UIDevice currentDevice];
    [Flurry logEvent:@"SESSION_START"
      withParameters:[NSDictionary dictionaryWithObjectsAndKeys:[device systemVersion], @"OS", nil]
               timed:YES];

Our logs show the individual Flurry log calls occurring within the app. What we do NOT see is anything suggesting that the information is sent to Flurry.

Both setSessionReportsOnPauseEnabled: and setSessionReportsOnCloseEnabled: are set to YES but there is no communication to Flurry of session data when the app is paused or closed. When I restart the app, Flurry attempts to send session data that unfortunately results in:

FlurrySession: Add crashed former session

As instructed, we started the Flurry session in:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions method of your AppDelegate

According to Flurry's website, we are not tracking any Events.

We are using Flurry 4.2.2 SDK

like image 524
dredful Avatar asked Dec 08 '22 14:12

dredful


1 Answers

The issue which seems to be unique to Flurry SDK 4.2.2:

In 4.2.2 there is a new method:

+ (void)setBackgroundSessionEnabled:(BOOL)setBackgroundSessionEnabled;

It automatically gets set to YES if there are any UIBackgroundModes for your app. Our app uses the GPS in the background. Therefore Flurry will never post session data when going to the background.

When I force [Flurry setBackgroundSessionEnabled:NO]; then it sends up the session data when the Home Button is pressed and the app goes to the background.

I am not sure how this could ever work otherwise. We don't have a need to use Flurry to update GPS locations so this can work for us now.

Hopefully this helps others struggling with this problem.

Update: 6/17/2014:

I found more on this in Flurry's FAQ

like image 153
dredful Avatar answered Dec 11 '22 10:12

dredful